有两种用法,分别是:
(1)从model中获取
@Controller
public class HelloWorldController {
@ModelAttribute("user")
public User addAccount() {
return new User("jz","123");
}
@RequestMapping(value = "/helloWorld")
public String helloWorld(@ModelAttribute("user") User user) {
user.setUserName("jizhou");
return "helloWorld";
}
}
在这个例子里,@ModelAttribute("user") 申明参数user的值来源于Model中key=user的属性值。
(2)从Form表单或URL参数中获取(实际上,不做@ModelAttribute注解也能拿到user对象)
@Controller
public class HelloWorldController {
@RequestMapping(value = "/helloWorld")
public String helloWorld(@ModelAttribute User user) {
return "helloWorld";
}
}
在这个例子里,@ModelAttribute申明参数user的值来源于Form表单提交或URL参数。
注意:这时候,这个User类一定要有没有参数的构造函数。