对于填写的表单信息比较多分在多张表中的简单的封装方法,请看下面代码
servlet代码:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
Person p = new Person();//用于接收数据的对象
p= CommonUtils.toBean(request.getParameterMap(), Person.class);//将对应的数据封装到对象中
System.out.println(p.getName()+"---"+p.getAge()+"---"+p.getId());//输出
Personss p1 = new Personss();//用于接收数据的对象
p1 = CommonUtils.toBean(request.getParameterMap(), Personss.class);//将对象封装到对象中
System.out.println(p1.getAge1()+"----"+p1.getAge2());//输出
}
jsp:
<form action="servlet/TestServlet" method="post"> i:<input type="text" id='id' name='id'><br> n:<input type="text" id='name' name='name'><br> a:<input type="text" id="age" name="age"><br><br> a:<input type="text" id="age1" name="age1"><br><br> a:<input type="text" id="age2" name="age2"><br><br> a:<input type="text" id="age3" name="age3"><br><br>
对象:
public class Personss {
private String age1;
private String age2;
public String getAge1() {
return age1;
}
public void setAge1(String age1) {
this.age1 = age1;
}
public String getAge2() {
return age2;
}
public void setAge2(String age2) {
this.age2 = age2;
}
}
public Person(String name, Integer age) {
this.name = name;
this.age = age;
}
// Property accessors
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return this.age;
}
public void setAge(Integer age) {
this.age = age;
}
在使用中一次提交的数据是几个对象中的数据,使用封装的时候,该方法会自动的只将属于自己的属性值进行装箱,他们之间互不影响,需要注意的的是,界面提交的数据的属性名,必须和pojo的属性名是一致的。
需要的jar包