Spring MVC @ModelAttribute 数据绑定
前言
- 示例未经验证
Spring MVC @ModelAttribute 数据绑定
- 通过
WebDataBinder
将@RequestMapping
方法的参数
与request
进行数据绑定 WebDataBinder
将request parameter names (query parameters and form fields)
与field names on the target Object
进行匹配- 数据绑定时,会使用
Spring Expression Language (SpEL)
绑定属性值
示例
Student 定义
class Student {private String name;private int age;private Map<String, String> param;
}
Teacher 定义
class Teacher {private String name;private List<String> tag;private List<Map<String, String>> group;
}
一般情况
@RequestMapping
方法声明
@PostMapping("save")
public String save(Student student){}
form表单
<input type="text" name="name" />
<input type="text" name="age" />
带前缀情况
@RequestMapping
方法声明
@PostMapping("save")
public String save(@ModelAttribute("s")Student student, @ModelAttribute("t")Teacher teacher){}
form表单
<input type="text" name="s.name" />
<input type="text" name="t.name" />
Map 作为对象属性
@RequestMapping
方法声明
@PostMapping("save")
public String save(@ModelAttribute("s")Student student){}
form表单
<input type="text" name="s.param['beginDate']" />
<input type="text" name="s.param['endDate']" />
List 作为对象属性
@RequestMapping
方法声明
@PostMapping("save")
public String save(@ModelAttribute("t")Teacher teacher){}
form表单
<input type="text" name="t.tag[0]" />
<input type="text" name="t.tag[1]" />
List<Map> 作为对象属性
@RequestMapping
方法声明
@PostMapping("save")
public String save(@ModelAttribute("t")Teacher teacher){}
form表单
<input type="text" name="t.group[0]['name']" />
<input type="text" name="t.group[0]['remark']" />
<input type="text" name="t.group[1]['name']" />
<input type="text" name="t.group[2]['name']" />
<input type="text" name="t.group[2]['remark']" />
参考
https://blog.csdn.net/qwe6112071/article/details/51062317
https://www.oschina.net/question/2539126_2160750
Spring MVC @ModelAttribute 数据绑定相关推荐
- Spring MVC中数据绑定流程和原理
Spring MVC不支持表单日期字符串和日期类型之间的转换 Spring MVC数据绑定的流程(Spring MVC通过反射 机制对目标处理方法进行解析) 1.Spring MVC将ServletR ...
- [Spring MVC] - @ModelAttribute使用
在Spring MVC里,@ModelAttribute通常使用在Controller方法的参数注解中,用于解释model entity,但同时,也可以放在方法注解里. 如果把@ModelAttrib ...
- spring mvc @ModelAttribute 基本类型 自定义对象解析流程
一.如果方法中参数为基本类型,则通过POST的表单或者GET参数会使用 RequestParamMethodArgumentResolver作为参数解析器进行转换.如果参数名和客户端传入的参数名不一样 ...
- Spring MVC @ModelAttribute 详解
1.@ModelAttribute注释void返回值的方法 [java] view plaincopy print? @Controller public class HelloModelContro ...
- Spring mvc @ModelAttribute
SpringMVC4.3 版本以后新加入 作用: 出现在方法上,表示当前方法会在控制器的方法执行之前,先执行 出现在参数上,获取指定的数据给参数赋值. 属性: value:用于获取数据的 key.ke ...
- 3 Spring MVC 数据绑定
1 映射 Cookie Spring MVC 通过映射可以直接在业务方法中获取 Cookie 的值. @RequestMapping("/cookie") public Strin ...
- Spring 2.5:Spring MVC中的新特性
转载说明:infoQ就是牛人多,看人家去年就把Spring2.5注视驱动的MVC写出来了,还是这么详细,我真是自叹不如,今天偶尔看到这篇文章非常认真的拜读了2遍,简直是茅厕顿开啊....\(^o^)/ ...
- Spring MVC框架——Web开发框架
1.MVC设计模式 一般指MVC框架,M(Model)数据模型层,V(View)视图层,C(Controller)控制层. Controller层:获取用户的请求,处理相关业务逻辑,并成功跳转页面,负 ...
- 【Java学习路线之JavaWeb】Spring MVC框架入门教程
文章目录 读者 阅读条件 MVC设计模式简介 JSP+JavaBean Servlet+JSP+JavaBean MVC优缺点 优点 缺点 Spring MVC是什么 Spring MVC优点 第一个 ...
最新文章
- vs报错 已经在 helpers.obj 中定义
- python sql in list
- P3246 [HNOI2016]序列(莫队+单调栈+ST表)
- 亿佰特物联网通信-智慧城市的未来城市愿景
- 小企业的第一台服务器如何选?
- Python批量Excel文件数据导入SQLite数据库的优化方案
- cmake设置了CMAKE_MODULE_PATH,include找不到文件
- 装Windows 8 过程中遇到的问题,及解决方案
- 微软收购PhoneFactor以提高多因素身份认证应用程序的安全性
- uni-app请求后台接口方法封装
- 《计算机组成原理》第五版(唐朔飞考研版) 全书知识梳理
- 软件项目管理的重点知识
- php值班系统,php简单的值日值班处理方法
- eBay SOA开源平台
- Linux一句话精彩问答
- mysql the cabinet_mysql 一个较特殊的问题:You can’t specify target table ‘wms_cabinet_form’ | 很文博客...
- 初中计算机教师个人总结报告,初中计算机教师度工作总结工作总结
- 仿滴滴打车时间选择器开始结束时间
- The LeVoice Far-field Speech Recognition System for VOiCES from a Distance Challenge 2019
- xilinx IP 汇总
热门文章
- Debian 项目不再提供 CD 格式的 ISO 镜像
- github推送错误:已经有此代码,不允许覆盖的解决方法
- 网络分层协议图以及各层的简介
- tcp连接的三次握手
- Selenium - 简介
- 法嵌入互操作类型“SHDocVw.ShellWindowsClass”请改用适用的接口-解决方法
- JS(去掉前后空格或去掉所有空格)的用法
- 在C#代码中应用Log4Net 中配置文件的解释
- bct对oracle影响,Oracle 优化篇+Rman增量备份优化之BCT(块变更追踪)
- php连接redis的操作库predis操作大全