springmvc如何使用map接收参数
程序员文章站
2022-06-16 23:48:23
目录springmvc 使用map接收参数第一种情况:请求参数有多组第二种情况:所有的参数不分组用map接收参数的几个注意的问题1、接受map的参数不能写value2、对于多个同名字段springmv...
springmvc 使用map接收参数
开发过程中有时候我们并不知道前端都会传递哪些参数给到后端. 为方便扩展接口功能, 在请求参数不改变的情况下兼容前端新增的入参的需求, 我们会考虑使用map接受参数. 这样无论前端加减参数, controller的入参是不需要变动的.
第一种情况:请求参数有多组
如:一组个人信息, 一组地址信息
请求参数:
{ "personinfo": { "name1": "zona", "name2": "carl", "age": 23 }, "address": { "上海": "code1", "北京": "code2" } }
controller层代码:
// map的value参数类型设置为object @postmapping("/map") public void map(@requestbody map<string, object> mapparam){ system.out.println(mapparam); }
controller层接受参数:
第二种情况:所有的参数不分组
请求参数:
{ "name1": "zona", "name2": "carl", "age": 23 }
controller层代码
// map的value类型是string @postmapping("/map") public void map(@requestbody map<string, string> mapparam){ system.out.println(mapparam); }
controller层接受参数
用map接收参数的几个注意的问题
public void tbconordpricesubmit(@requestparam(value="cdlistkeyarrayfront",required=false) string[] cdlistkeyarrayfront,@requestparam(required=false) map parmap, httpsession session, httpservletrequest request, httpservletresponse response, model model, tbconordvo tbconordvo)
1、接受map的参数不能写value
否则不能自动打包前面的字段,其与模型驱动,属性驱动不冲突,最多就是数据冗余
2、对于多个同名字段
map只会取第一个,不会变成字符数组,或用,隔开,此时只能用属性驱动,或模型驱动
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
推荐阅读
-
Spring Cloud如何使用Feign构造多参数的请求
-
解决SpringMVC Controller 接收页面传递的中文参数出现乱码的问题
-
springmvc 传递和接收数组参数的实例
-
ps中渐变映射调整图层如何定义及其各项参数的使用技巧
-
手机参数怎么看 如何使用腾讯电脑管家轻松查看手机参数
-
使用Net.Sockets.TcpListener和Net.Sockets.TcpClient进行图片传输时如何精确控制接收缓存数组大小
-
SpringMVC中控制器接收JSP页面表单的参数接收方式详解及细节注意(400错误)
-
SpringMvc 请求中日期类型参数接收一二事儿
-
解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
-
Spring Cloud如何使用Feign构造多参数的请求