Spring MVC @ModelAttribut注解

一直在使用Spring MVC 但是很少用到@ModelAttribute 注解。@ModelAttribute也是Spring MVC下的一个注解,@ModelAttribute注解只有在被@Controller和@ControllerAdvice两个注解的类下使用,否则无效。 

@ModelAttribut注解可以在3种情况下使用分别如下:

第一种

@ModelAttribute 注解在控制器(被@Controller)未被映射(未被@RequestMapping注解)的方法上,这样注解后每一次对当前方法所在映射方法请求时,都会先执行只被@ModelAttribute注解的方法,同时把@ModelAttribute注解方法参数列表中的值设置到请求方法中的模型对象中,这时设置到数据模型中的值的Key及参数名称,内容及参数。

如下方法执行完后进入请求方法时,请求方法的数据模型对象中会有一个

key=user的参数。

写道
@ModelAttribute
public void addUser(User user){
         user.setName("张三丰");
}

如下代码与上面代码不同的地方是什么那,有什么不同的效果那?

如下代码中与上面代码不同的地方是@ModelAttribue()中参数value的设置和未设置,上面代码中因为没有设置value的值,所以之能在请求方法的数据模型对象中填入key=user对值,使用value参数后,我们可以在增加一个key = user1的值到请求方法的数据模型对象中。如下方法执行后会在请求方法的数据对象中填入两个值分别是

扫描二维码关注公众号,回复: 365926 查看本文章

key = user

key = user1

@ModelAttribute(value="user1")
public void addUser(User user){
    user.setName("张三丰");
}

猜你喜欢

转载自wobpaa.iteye.com/blog/2305831
今日推荐