SpringMVC重要注解(四)@ModelAttribute
来源:互联网 发布:java stack overflow 编辑:程序博客网 时间:2024/06/14 00:41
在 SpringMVC 的 Controller
中使用 @ModelAttribute
时,应用位置包括下面几种:
- 应用在方法上。
- 应用在方法的参数上。
- 应用在方法上,并且方法也使用了
@RequestMapping
首先说明一下,被
@ModelAttribute
注解的方法会在Controller
每个方法执行之前都执行,因此对于一个Controller
中包含多个URL的时候,要谨慎使用。
这个例子,在请求 /modelattributeTest/test1?abc=aaa
后,会先执行 myModel
方法,然后接着执行test1
方法,参数 abc
的值被放入Model
中后,接着被带到 test
方法中。
当返回视图 modelattributetest/test1
时,Model
会被带到页面上,当然你在使用 @RequestParam
的时候可以使用 required
来指定参数是否是必须的。
Model
中,在 Model
中的 key
为 “返回值首字母小写”,value
为返回的值。key
为 string
、int
、float
等等这样的。model.addAttribute(“num”, number)
;从代码中可以看出,使用 @ModelAttribute
注解的参数,意思是从前面的 Model
中提取对应名称的属性。
这里提及一下 @SessionAttributes
的使用:
1、如果在类上面使用了 @SessionAttributes(“attributeName”)
注解,而本类中恰巧存在 attributeName
,则会将 attributeName
放入到 session
作用域。
2、如果在类上面使用了 @SessionAttributes(“attributeName”)
注解,SpringMVC 会在执行方法之前,自动从 session
中读取 key
为 attributeName
的值,并注入到 Model
中。
所以我们在方法的参数中使用 @ModelAttribute(“attributeName”)
就会正常的从 Model
读取这个值,也就相当于获取了 session
中的值。
3、使用了 @SessionAttributes
之后,Spring 无法知道什么时候要清掉 @SessionAttributes
存进去的数据,如果要明确告知,也就是在方法中传入 SessionStatus
对象参数,并调用 status.setComplete()
就可以了。
这两点大家好好尝试下,或者找一下关于 @SessionAttributes
更详细的介绍。
Model
中的值,此时对应的页面就是 @RequestMapping
的值 test1。- SpringMVC重要注解(四)@ModelAttribute
- SpringMVC学习(七)之ModelAttribute注解
- springmvc的ModelAttribute注解
- SpringMVC注解之@ModelAttribute
- springmvc的ModelAttribute注解
- springmvc的ModelAttribute注解
- springmvc的ModelAttribute注解
- springMVC注解之 @ModelAttribute
- springmvc的ModelAttribute注解
- SpringMVC中的@ModelAttribute注解
- springmvc注解之@ModelAttribute
- Springmvc的@ModelAttribute注解
- SpringMVC-ModelAttribute注解
- SpringMVC中的@ModelAttribute注解
- springmvc中@ModelAttribute注解
- springmvc的ModelAttribute注解
- springmvc的ModelAttribute注解
- springmvc的ModelAttribute注解
- Selenium配置与相关报错
- 计算机跨专业读研,经历失败,感激失败,成功就在不远处!!!(第一次面经)
- 数据预处理的python实现
- Linux系统监测python程序挂掉并重启
- WKWebView的使用和各种坑的解决方法(OC+Swift)
- SpringMVC重要注解(四)@ModelAttribute
- 完全卸载
- Android studio 华为调试不打印崩溃日志
- Jsp中的静态引入和动态引入
- 程序、编译器和操作系统
- 编译Hi3516a osdrv目录
- 机器人进阶学习(一)---基于stm32的底层搭建,与上位机通讯及base_control编写
- CSS设置图片转向
- 机器学习之支持向量机SVM Support Vector Machine (六) 高斯核调参