【SpringMVC】@ModelAttribute注解的作用
【SpringMVC】@ModelAttribute注解的作用
1.用在方法的参数上
注解在参数上,会将客户端传递过来的参数按名称注入到指定对象中, 并且会将这个对象自动加入ModelMap中
<form action="../register" method="post"> 姓名:<input type="text" name="name" id="name"><br/> 生日:<input type="text" id="birthday" name="birthday"><br> <input id="submit" type="submit" value="提交"/> </form>
@RequestMapping(value="/register") public String register(@ModelAttribute User user,Model model) { System.out.println(user.getBirthday()); model.addAttribute("user", user); return "success"; }
2.用在Controller的方法上
注解在方法上,会在每一个@RequestMapping标注的方法前执行, 如果有返回值,则自动将该返回值加入到ModelMap中
/* * 在控制器类的处理方法执行前执行指定的方法 */ @ModelAttribute public User getUser(Model model) { User user=new User("吕蒙","123",new Address("江苏","南京")); model.addAttribute("user", user); return user; } @RequestMapping("/modelAttribute") public String modelAttribute(User user) { System.out.println(user); return "success"; }