假设表单如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>自定义参数测试</title>
</head>
<body>
<form action="/saveuser" method="post">
姓名: <input name="userName" value="zhangsan"/> <br/><!--name的值与实体类中的命名要保持一致-->
年龄: <input name="age" value="18"/> <br/>
生日: <input name="birth" value="2019/12/10"/> <br/>
宠物姓名:<input name="pet.name" value="阿猫"/><br/>
宠物年龄:<input name="pet.age" value="5"/>
<input type="submit" value="保存"/>
</form>
</body>
</html>
自定义实体类Person与表单的参数一一对应:
@Data
public class Person {
private String userName;
private Integer age;
private Date birth;
private Pet pet;
}
Pet:
@Data
public class Pet {
private String name;
private String age;
}
测试:
@RestController
public class TestController {
/**
* 数据绑定:页面提交的请求数据(GET、POST)都可以和对象属性进行绑定
* @param person
* @return
*/
@PostMapping("/saveuser")
public Person saveuser(Person person){
return person;
}
}
结果: