【Spring MVC】 - @ModelAttribute使用
2024-09-06 13:41:07
@ModelAttribute一个具有如下三个作用:
①绑定请求参数到命令对象:放在功能处理方法的入参上时,用于将多个请求参数绑定到一个命令对象,从而简化绑
定流程,而且自动暴露为模型数据用于视图页面展示时使用;
②暴露表单引用对象为模型数据:放在处理器的一般方法(非功能处理方法)上时,是为表单准备要展示的表单引用
对象,如注册时需要选择的所在城市等,而且在执行功能处理方法(@RequestMapping 注解的方法)之前,自动添加
到模型对象中,用于视图页面展示时使用;
③暴露@RequestMapping 方法返回值为模型数据:放在功能处理方法的返回值上时,是暴露功能处理方法的返回值为
模型数据,用于视图页面展示时使用。
在Spring MVC里,@ModelAttribute通常使用在Controller方法的参数注解中,用于解释model entity,
但同时,也可以放在方法注解里。
如果把@ModelAttribute放在方法的注解上时,代表的是:该Controller的所有方法在调用前,先执行此@ModelAttribute方法
一:@ModelAttribute应用到Controller方法的参数注解中
@Controller
@RequestMapping(value = "application")
public class ApplicationController{
public String test1(@ModelAttribute("user") UserModel user) { }
}
二:@ModelAttribute放在方法上》该Controller的所有方法在调用前,先执行此@ModelAttribute方法
@Controller
@RequestMapping(value = "application")
public class ApplicationController{
@ModelAttribute("basePath")
public String basePath(HttpServletRequest request){
String basePath = request.getContextPath();
return basePath.endsWith("/") ? basePath.substring(0, basePath.length() - 1) : basePath;
}
}
最新文章
- Java迭代器
- r0遍历系统进程方法总结
- 可输入自动匹配Select——jquery ui autocomplete
- Python学习笔记7-把函数当参数传递、指定可变参数
- iOS应用程序内存查看工具
- MyISAM 存储引擎的特点及优化方法
- JMeter入门(01)概念和样例
- Robust Locally Weighted Regression 鲁棒局部加权回归 -R实现
- python 编码 自动加双斜杠问题
- JIRA日期格式设置
- BZOJ-6-2460: [BeiJing2011]元素-线性基
- EntityFreamWork 项目总结
- bind封装
- Servlet的补充知识
- 【消息】Pivotal Pivots 开源大数据处理的核心组件
- css学习_css复合选择器
- 运行tomcat报Exception in thread ";ContainerBackgroundProcessor[StandardEngine[Catalina]]";
- Python 编程快速上手 第九章 组织文件
- LayUI——数据表格使用
- 爬虫实战1:使用requests和正则爬取电影信息
热门文章
- Java泛型总结---基本用法,类型限定,通配符,类型擦除
- openfire Android学习(一)----实现用户注册、登录、修改密码和注销等
- 【GitHub】给GitHub上的ReadMe.md文件中添加图片怎么做 、 gitHub创建文件夹
- 自己定义ImageView,实现点击之后算出点击的是身体的哪个部位
- HDU 2648(搜索题,哈希表)
- Android自己定义View的实现方法
- iOS 倒计时NSTimer
- Linux基础(3)- 正文处理命令及tar命令、vi编辑器、硬盘分区、格式化及文件系统的管理和软连接、硬连接
- Audio原理图设计
- CentOS7配置opencv for python &;&; eclipse c/c++[更新]