Spring RESTful之@ModelAttribute

  @ModelAttribute有俩个位置,一个是在方法体中,下面这个demo的用意就是每次controller@RequestMapping方法被调用之前都会走这个方法,并向Model中(@RequestMapping函数参数的Model)中添加这个返回值,key的值是返回类的首字母小写,比如这个就是key="sysUserMapping";
 1 @ModelAttribute
 2 public SysUserMapping get(@RequestParam(required = false) String id) {
 3 SysUserMapping entity = null;
 4 if (StringUtils.isNotBlank(id)) {
 5 entity = sysUserMappingService.get(id);
 6 }
 7 if (entity == null) {
 8 entity = new SysUserMapping();
 9 }
10 return entity;
11 }
12  
13 @RequestMapping(value = "form")
14 public String form(Model model) {
15 return "platform/usermapping/sysUserMappingForm";
16 }

   对于form这个函数,即使什么也不做,此时你通过model.containsAttribute(“sysUserMapping”),你将会看到是存在值的。@ModelAttribute还有一个用途就是放在@RequestMapping的函数的参数前面,代表该参数和View绑定的对象做映射,当然前提是当初在获取页面的时候就要在页面中的Model中通过addAttribute进行添加。

posted on 2018-03-11 22:24  下士闻道  阅读(252)  评论(0编辑  收藏  举报

导航