只要在@controller中有@RequestParam Map<String, Object> regUser;这个map会自动在jsp提交的时候,将name作为map的key,对应的值作为map 的value,
这种适用注册等字段复杂,但是重用性不高的情况(此时不是另建bo接收),另用map接收由于用单个参数接收url之后的参数对name是依靠数据库临时组合出来的form,
中的域值可以都接到,详见后续的不同name的多图片上传,就连url后面的参数“=”也可
不需要可以
param.remove("navTabId");
param.remove("callbackType");
param.remove("menuitemId");
param.put("PROVINCE_AREA_KEY", param.get("provinceAreaKey"));//替换成数据库字段
param.put("CITY_AREA_KEY", param.get("cityAreaKey"));
param.put("COUNTY_AREA_KEY", param.get("country"));
param.remove("provinceAreaKey");
param.remove("cityAreaKey");
param.remove("country");
param.remove("button2");
http://www.codes51.com/article/detail_114729.html
@RestController
@RequestMapping(value = "/mapParameter/")
public class MapParameter {
/**
* 用Map接收前端提交的Form Data或Query String,如果有相同的参数名,只接收第一个
* @author XuJijun
* @param params
* @return
*/
@RequestMapping(value = "map")
public Map<String, Object> test1(@RequestParam Map<String, Object> params) {
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap = params;
return resultMap;
}
/**
* 用MultiValueMap接收前端提交的Form Data或Query String,可以接收相同的参数名的值到同一个list中
* @author XuJijun
* @param params
* @return
*/
@RequestMapping(value = "multiValueMap")
public Map<String, List<Object>> test2(@RequestParam MultiValueMap<String, Object> params) {
Map<String, List<Object>> resultMap = new HashMap<>();
resultMap = params;
return resultMap;
}
/**
* 用Map接收前端提交的json格式的Request Payload,如果有相同的参数名,只接收最后一个
* @author XuJijun
* @param params
* @return
*/
@RequestMapping(value = "jsonParams")
public Map<String, Object> test3(@RequestBody Map<String, Object> params) {
Map<String, Object> resultMap = new HashMap<String, Object>();
resultMap = params;
return resultMap;
}
}
示例:
@RequestMapping("/account/tbCusFirmChg/edit")
public String add(@RequestParam(value = "customerKey", required = false) String customerKey,@RequestParam Map<String, Object> regUser,Model model) throws EsteelException {
}
form action="<c:url value='/account/tbCusFirmChg/edit?navTabId=userLiNav&callbackType=closeCurrent'/>" method="post" validate="true" onsubmit="return validForm();">
<div style="height: 645px; overflow:auto; ">
<input type="hidden" name="CUSTOMER_KEY" value="CUSTOMER_KEY">
<input type="hidden" name="menuitemId" value="menuitemId">
<fieldset style="margin: auto;">
<legend>公司信息</legend>
<dl style="width: 50%;float: left;margin-bottom: 3px;">
<dt style="float: left;text-align:right;width: 20%; ">会员编码:</dt>
<dd style="float: left;text-align:left;width: 30%;"><input name="CUSTOMER_ID" id="regUser_CUSTOMER_ID" class="required textInput" value="${CUSTOMER_ID}" maxlength="18" onkeydown="if (event.keyCode==13)event.keyCode=9;"/></dd>
</dl>
<dl style="width: 50%;float: left;margin-bottom: 3px;">
<dt style="float: left;text-align:right;width: 20%;">子账号席位:</dt>
<dd style="float: left;text-align:left;width: 30%;"><input name="SET_USER_NUM" id="regUser.SET_USER_NUM" class="input-longer" value="${voo.SET_USER_NUM}" maxlength="3" /></dd>
</dl>
<dl style="width: 50%;float: left;margin-bottom: 3px;">
<dt style="float: left;text-align:right;width: 20%;">公司类型:</dt>
<dd style="float: left;text-align:left;width: 30%;"> <label id="regUser_COMP_TYPEA" ><input type="radio" id="COMP_TYPEA" name="COMP_TYPE" value="Y"
<c:if test="${voo.COMP_TYPE=='Y' or voo.COMP_TYPE!='N'}">checked="checked"</c:if> />境内<input type="radio" name="COMP_TYPE" value="N" <c:if test="${voo.COMP_TYPE=='N'}">checked="checked"</c:if> />境外</label></dd>
</dl>
<dl style="width: 50%;float: left;margin-bottom: 3px;">
<dt style="float: left;text-align:right;width: 20%;" ><span id="wmzzmc">外贸资质:</span></dt>
<dd style="float: left;text-align:left;width: 30%;" ><SPAN id="wmzzxz"><label id="regUser_TRADE_APTA"><input type="radio" id="TRADE_APTA" name="TRADE_APT" value="Y" <c:if test="${voo.tradeApt=='Y' or voo.tradeApt!='N' or voo.COMP_TYPE=='Y'}">checked="checked"</c:if> />具备<input type="radio" name="TRADE_APT" value="N" <c:if test="${voo.tradeApt=='N'}">checked="checked"</c:if> />不具备</label></SPAN></dd>
</dl>
</div>
</form>
相关推荐
前端使用jquery向后台传递数组类型的参数,Java后台直接通过List类型接收,会发现无法取到参数。
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。Spring MVC4是当前zuixin的版本,在众多特性上有了进一步的提升。, 在精通Spring...
精通Spring MVC 4 中文
主要给大家介绍了关于Spring MVC请求参数与响应结果全局加密和解密的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章将教你快速地上手使用 Spring 框架. 如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring...
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
本文详细介绍spring MVC的原理和开发心得体会。
Spring.MVC-A.Tutorial-Spring.MVC学习指南 高清可复制版PDF
Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于注解实例Spring MVC 基于...
全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,...
Spring web MVC和spring 2.0 form tag的解说,里面的内容可以当作平时的工具书查看
3.Spring MVC 请求参数的获取案例 4.Spring MVC 域对象共享数据案例 5.Spring MVC @ModelAttribute 注解案例 6.Spring MVC 国际化案例 7.Spring MVC 请求转发与请求重定向案例 8.Spring MVC 下载 Excel 文档的需求...
spring mvc4.1.4 源代码 spring mvc4.1.4 源代码spring mvc4.1.4 源代码spring mvc4.1.4 源代码spring mvc4.1.4 源代码
关于构建Sping MVC的Jar包,包括Sping2.5.6和Hibernate3.6.8
第3篇是Spring MVC技术入门,包括Spring MVC的背景介绍、架构整体剖析、环境搭建、处理器与映射器的讲解、前端控制器的源码分析、多种视图解析器的介绍、请求映射与参数绑定的介绍、Validation校验与异常处理和拦截...
十、spring mvc 如何使用拦截器? 十一、spring mvc 如何实现全局的异常处理? 十二、spring mvc 如何把全局异常记录到日志中? 十三、如何给spring3 MVC中的Action做JUnit单元测试? 十四、spring mvc 转发与重定向...
This is a tutorial on Spring MVC, a module in the Spring Framework for rapidly developing web applications. The MVC in Spring MVC stands for Model-View-Controller, a design pattern widely used in ...
Spring MVC所需jar包,包含java开发中 Spring MVC架构中最常用的jar包