您的位置:首页 > 其它

@ModelAttribute和@SessionAttributes的用法

2016-04-18 10:49 405 查看
1.@SessionAttribute是Controller类级别的注解,作用是为了将指定名称或类型的隐含模型中的对象放置到Session作用域中,实现多次请求共享参数,在每次请求的时候,使用@SessionAttributes添加的对象也会被添加到隐含模型对象中,我们可以通过@ModelAttribute来获取隐含模型中的对象。

注:向隐含模型对象中添加数据的几种方式:1、Map/Model/ModelMap类型的入参 2、@ModelAttribute注解标注在方法上或者方法的入参处,标注在方法的入参数,既可以从隐含模型中取数据,又可以向隐含模型对象中添加数据。

2.@ModelAttribute标注的对象是request级别的,数据最终都会被放置到request作用域中,隋着request的销毁而销毁;@SessionAttribute标示数据为session级别,清除的方式为,在方法的入参中添加SessionStatus类型的入参,然后使用SessionStatus.setComplete()来清除,注意SessionStatus.setComplete()只会清除通过@SessionAttributes方式添加的数据,而不会清除HttpSession中数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ModelAttribute