J2EE系列之Struts2学习笔记(六)---struts2处理传入多个数目不定的JavaBean对象

J2EE系列之Struts2学习笔记(四)中讲述了如何从前台web页面传一个类类型的对象到处理后台。这几篇讲述前台web页面如何把数目不定的javabean对象传入到后台。

1.在上一篇博客工程的基础上新建一个Student类:

package com.test.model;

public class Student {

	private String name;
	private String sex;
	private int age;
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	@Override
	public String toString() {
		return "Student [name=" + name + ", sex=" + sex + ", age=" + age + "]";
	}
	
	
}

2.新建一个处理类StudentAction:

package com.test.action;

import java.util.List;

import com.opensymphony.xwork2.Action;
import com.test.model.Student;

public class StudentAction implements Action{
	
	private List students;
	

	public List getStudents() {
		return students;
	}

	public void setStudents(List students) {
		this.students = students;
	}


	@Override
	public String execute() throws Exception {
		
		System.out.println("执行了Action的默认方法");
		for(Student s:students){
			System.out.println(s);
		}
		return SUCCESS;
	}
	

}

注意,这里定义了一个List对象students来接收从前台传入的数目不定的Student对象。一定要生成students元素的get和set方法。在默认执行函数execute中把前台输入的对象打印到控制台中。

3.编辑struts.xml:


	
   
	   	
	   		success.jsp
	   	
	   	
	   	
	   		success.jsp
	   	
	   	
   



4.新建一个addstudents.jsp页面,用来编辑要传入后台的数据:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


姓名 性别 年龄

注意这里使用了students[x].属性名的方式来给后台students对象的第x个元素的属性来赋值。

5.运行程序:

J2EE系列之Struts2学习笔记(六)---struts2处理传入多个数目不定的JavaBean对象_第1张图片

输入信息后点击提交,查看控制台输出:


可见这里已经把前台web页面输出的student对象传到了后台。


你可能感兴趣的:(Java程序开发)