springmvc 在做前台页面渲染时,会使用控制器处理方法中保存的模型对象,那对象是怎么添加的呢。
使用@modelattribute 修饰方法,方法入参,方法返回值这几种途径中修饰方法入参时如不用此注解的区别是什么的,不用注解,绑定是入参类型首字母小写的对象,否则绑定的是value属性指定的对象
如果使用了此参数,首先会查找当前模型对象中是否有同属性的命令对象在,如果有直接传给入参,如果没有在看当前控制器有没有被 @SessionAttributes 注解过,如果没有的话就通过反射创建并传给此入参,再将请求的各属性保存在其中,并保存在模型对象中。 如果被@SessionAttributes(“xxx”)注解过,则看session中有没有xxx同名的对象,没有的话抛出异常(如果@SessionAttributes没有设置value值则同没有添加@SessionAttributes注解的结果)。
Spring MVC 对于@ModelAttribute 、@SessionAttributes 的处理
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...