文档章节

springboot前端向后端传递复杂对象如list set的接收问题

o
 osc_wws45aot
发布于 2019/09/02 17:52
字数 517
阅读 81
收藏 0

精选30+云产品,助力企业轻松上云!>>>

 转自:https://blog.csdn.net/qq_27093465/article/details/52094112

https://www.cnblogs.com/yfzhou/p/9661994.html

spring MVC后台处理数组对象。

list类型的参数,接收前台的数组值,实验了一下,结果还真可以。
不用绑定到对象里面。
当然我这个是前台传递了个包含的是string的数组到后台,然后,后台用list来接收。
具体如下:

前台代码:

//发送请求到后台,带数组形式的数据。
function testList() {
var data = getTreeViewCheckedData();
$.ajax({
url: APP_NAME + "xxxx/testList",
data: {
list:data
},
dataType: "json",
success: function (data) {
}
});
}
//获得数据---以数组的形式存储
function getTreeViewCheckedData() {
var checkedData = [];
$('#shareSetting').find('ol.bonsai input:checkbox:checked').each(function () {
checkedData.push($(this).val())
}
);
return checkedData;
}

后台代码:
//方式一,用list接收前台的数组参数。
@RequestMapping(value = "/testList")
@ResponseBody
public JsonResult testList(@RequestParam(required = false, value = "list[]") List<String> list){
LOG.debug("---------------XxxxController: testList---------------");
LOG.debug("---------------list:\t" + list);
return new JsonResult(true,"ok ",null);
}

//方式二,用数组接收前台的数组参数。然后转化成list,虽然没必要。
@RequestMapping(value = "/testList")
@ResponseBody
public JsonResult testList(@RequestParam(required = false, value = "list[]") String[] list){
LOG.debug("---------------XxxxController: testList---------------");
LOG.debug("---------------list:\t" + list);
List<String> newList = Lists.newArrayList(Arrays.asList(list));
return new JsonResult(true,"ok ",null);
}

注意的地方:

value = "list[],这个好像不能省,

另外你要是修改方法上的参数的话,就得重启一下,不然得不到值

这个list要和前台的数据一模一样。


————————————————
版权声明:本文为CSDN博主「李学凯」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_27093465/article/details/52094112

 

 

 

前端JS

复制代码
1 var taskList = ["123","456"];
 2 var params = {
 3     taskList: taskList
 4 };
 5 
 6 $.ajax({
 7     type: "PUT",
 8     dataType: "json",
 9     url: "/client/update",
10     data: params,
11     success: function (msg) {
12     }
13 });
复制代码

后端接收:

1 @RequestMapping(value = "/update", method = RequestMethod.PUT)
2 @ResponseBody
3 public JSONResult updateClient(Client client, @RequestParam(value = "taskList[]") List<String> taskList) {
4     logger.debug("Yufan taskList={}", taskList);
5     return JSONResult.ok();
6 }

参考文献:spring MVC 前台传数组类型,后台用list类型接收也是可以的

博客内容均为本人学习记录,不保证一定正确,如果错误,欢迎指正。
o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
axios 用 params/data 发送参数给 springboot controller,如何才能正确获取

今天有人遇到接口调用不通的情况,粗略看了一下是axios跨域请求引起了。找到问题,处理就简单多了。 但是我看其代码,发现比较有意思 export function agentlist(query) {return request({ }...

osc_m8nx82a1
2019/06/29
44
0
axios 用 params/data 发送参数给 springboot controller,如何才能正确获取

今天有人遇到接口调用不通的情况,粗略看了一下是axios跨域请求引起了。找到问题,处理就简单多了。 但是我看其代码,发现比较有意思 export function agentlist(query) {return request({ }...

DW039
2019/06/29
0
0
axios 用 params/data 发送参数给 springboot controller,如何才能正确获取

今天有人遇到接口调用不通的情况,粗略看了一下是axios跨域请求引起了。找到问题,处理就简单多了。 但是我看其代码,发现比较有意思 export function agentlist(query) {return request({ }...

osc_dc6pbw3x
05/30
11
0
SpringBoot系列(十)优雅的处理统一异常处理与统一结果返回

SpringBoot系列(十)统一异常处理与统一结果返回 往期推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 springBoot系列(三)配置文件详解 SpringBoot系列(...

全栈学习笔记
04/26
0
0
SpringBoot系列(十)优雅的处理统一异常处理与统一结果返回

SpringBoot系列(十)统一异常处理与统一结果返回 往期推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 springBoot系列(三)配置文件详解 SpringBoot系列(...

全栈学习笔记
04/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

setShadowLayer阴影与SetMaskFilter发光效果

一、setShadowLayer构造函数 public void setShadowLayer(float radius, float dx, float dy, int color) radius:模糊半径,radius越大越模糊,越小越清晰,但是如果radius设置为0,则阴...

IamOkay
17分钟前
31
0
做儿媳的,千万不要把婆婆当亲妈看

我和老公结婚有三四个年头了,还生育了两个调皮可爱的孩子。在别人眼里,我就像掉进了福窝里一样。然而我有时候在老公面前耍小性子,撒娇卖萌什么样的,婆婆却指责我不守妇道。 结婚起初婆家...

创业hzcya
27分钟前
6
0
多线程之线程部分

① 进程与线程 程序、进程、线程、协程的概念 程序: 用某种语言编写的一组指令的集合,即指一段静态的代码; 进程:简单地说就是一个正在执行的程序或应用,是资源分配的最小单位; 线程:线...

Arno_pei
39分钟前
0
0
08VulKan——描述符布局、缓冲、描述符池和描述符集

整体思想: 对于一些所有顶点都共享的属性,比如顶点的变换矩阵,将它们作为顶点属性为每个顶点都传递一份显然是非常浪费的 。VulKan提出使用资源描述符解决这种全局变量, 描述符是用来在着...

黑白双键
50分钟前
7
0
将分段视频合并

环境 操作系统:Ubuntu Kylin 优麒麟 20.04 LTS 适用架构:AMD64、ARM64(鲲鹏、飞腾) 方法 将下载的视频分片段放入同一个文件夹。按片段排序的文件名汇入list.txt。 ls qq_video*.mp4 | s...

chipo
53分钟前
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部