项目简介:
自动映射POJO,而且能够级联映射。
1,按照项目1搭建一个springmvc的web项目。
2,新建两个实体类。
Fahter类有一个Sun的成员变量。
public class Father {
private String name;
private int age;
private Sun sun;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Sun getSun() {
return sun;
}
public void setSun(Sun sun) {
this.sun = sun;
}
@Override
public String toString() {
return "Father [name=" + name + ", age=" + age + ", sun=" + sun + "]";
}
}
public class Sun {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Sun [name=" + name + ", age=" + age + "]";
}
}
3,新建一个控制类。
在testPojo方法中我们放入了一个Father类型的入参,springmvc将把页面中的参数自动注入其中,而且包括级联的属性。
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.escore.entities.Father;
@Controller
@RequestMapping("/pojoControl")
public class PojoControl {
@RequestMapping("/testPojo")
public String testPojo(Father father){
System.out.println("testPojo()..."+father);
return "success";
}
}
4,在index.jsp中添加提交的代码。
页面中name的属性分别与Father类的成员一一对应,springmvc将会自动注到映射方法的入参Father中去。
<body>
<form action="pojoControl/testPojo" method="post">
name:<input type="text" name="name"><br>
age:<input type="text" name="age"><br>
sun.name:<input type="text" name="sun.name"><br>
sun.age:<input type="text" name="sun.age"><br>
<input type="submit" value="test Pojo">
</form>
</body>