springmvc接收前台(可以是ajax)传来的数组list,map,set等集合,复杂对象集合等图文详解
参考帖子:
http://blog.csdn.net/wabiaozia/article/details/50803581
方法参考:
{
"token":"",
"itemsList":[{
"itemId":"",
"num":""
}...]
}
方式一:页面不用改动,只要在后台自定义一个实体类TokenItem TokenItem{
public List<item> itemsList;
public String token;
。。。}
//然后
TokenItem data= mapper.readValue(jsonData, TokenItem.class); 方式二:页面要改动,把contentType和data修改下。后台的接收方式改为@RequestParam
$.ajax({
type : "POST",
url : "../...",
data : {"token":token,"itemsList":JSON.stringify(itemsList)},
contentType:'application/x-www-form-urlencoded;charset=UTF-8',
dataType : 'json',
success : function(data) {
.......
}
}); //controller接收 public void aa(@RequestParam Map<String, Object> params){
String token=String.valueOf(params.get("token"));
String items = String.valueOf(params.get("itemsList"));
ObjectMapper mapper = new ObjectMapper();
List<item> itemsList = mapper.readValue(items, new TypeReference<List<item>>(){}); } 2 如果token是用作登录或权限验证作用,token应该放在header中而不是data里。
springmvc接收前台(可以是ajax)传来的数组list,map,set等集合,复杂对象集合等图文详解的更多相关文章
- springmvc接收前台(如ajax)传来的数组list,set等图文详解
ref:https://blog.csdn.net/wabiaozia/article/details/50803581 前言: 相信很人都被springmvc接收数组问题折磨过,查过几个解决 ...
- django 接受 ajax 传来的数组对象
django 接受 ajax 传来的数组对象 发送:ajax 通过 POST 方式传来一个数组 接收:django 接受方式 array = request.POST.getlist(‘key[]’) ...
- ajax请求总是不成功?浏览器的同源策略和跨域问题详解
场景 码农小明要做一个展示业务数据的大屏给老板看,里面包含了来自自己网站的数据和来自隔壁老王的数据.那么自己网站的数据提供了 http://xiaoming.com/whoami 这样的数据接口隔壁老 ...
- Hadoop3.1.1源码Client详解 : Packet入队后消息系统运作之ResponseProcessor(ACK接收)
该系列总览: Hadoop3.1.1架构体系——设计原理阐述与Client源码图文详解 : 总览 紧接着上一篇文章: Hadoop3.1.1源码Client详解 : Packet入队后消息系统运作之D ...
- spring 接收前台ajax传来的参数的几个方法
知识补充 JSON.stringify(), 将value(Object,Array,String,Number...)序列化为JSON字符串JSON.parse(), 将JSON数据解析为js原生值 ...
- AJAX发送json,SpringMVC 接收JSON,@RequestBody
需求:JQuery ajax前台,采用 POST请求 发送json,后台使用SpringMVC接收json并处理 前台: $.ajax({ url:"请求地址", type:&qu ...
- ajax传数组到后台,后台springmvc接收数组参数
var ids= new Array(); $("input[class='detailCheck']:checked").each(function(i,k){ var ...
- ashx接收前台传来的数据
前台js: $(function () { $.ajax({ url: "/TestAshx/GetJson.ashx", type: "post", data ...
- angularJS前台传list数组,后台springMVC接收数组
有时候需要在前台自定义对象,然后把对象封装在list中,在传送到后台,这样的思想也比较合理 1. 前台代码 $scope.saveScore = function () { $scope.userSc ...
随机推荐
- 第三百七十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapyd部署scrapy项目
第三百七十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapyd部署scrapy项目 scrapyd模块是专门用于部署scrapy项目的,可以部署和管理scrapy项目 下载地址:h ...
- e769. 在按钮组中选择一个单选按钮
// To create a radio button and button group, // see e768 创建单选按钮 // Select the radio button; the cur ...
- Android多任务切换与Activity启动模式SingleTask之间关系的分析
这里会以多个场景列子进行分析,在分析之前先了解一下基本的概念. Task任务:一系列Activity的集合,这些Activity以栈的形式进行排列(后进先出). 那在什么时候系统会新建一个Task任务 ...
- 轻量实用的PHP分页组件:Paginator
来源:https://www.helloweba.com/view-blog-453.html demo:https://www.helloweba.com/demo/2017/Paginator/
- linux下redis的安装和集群搭建
一.redis概述 1.1.目前redis支持的cluster特性: 1):节点自动发现. 2):slave->master 选举,集群容错. 3):Hot resharding:在线分片. 4 ...
- input框取消光标颜色手机端不生效
<style> input{ color:transparent; } </style> <input value="我要隐藏光标"> //文字 ...
- h5文件(.h5和.hdf5)
HDF5 (.h5, .hdf5) HDF 是 Hierarchical Data Format(分层数据格式)的缩写 HDF 版本 5不与 HDF 版本 4 及早期版本兼容. HDF5 (.h5, ...
- webdriver+expected_conditions二次封装
结合这两种方法对代码做二次封装,可以提升脚本性能 例: #coding:utf-8 #封装元素方法from selenium import webdriverfrom selenium.webdriv ...
- UINavigationController popToViewController用法
popToViewController用法 [self.navigationController popToViewController:[self.navigationController.vie ...
- AppStore应用转让流程
可能大家都有这样的情况,给公司客户开发一个ios app的前期阶段是先发布在自己公司的开发者账户上面的,而不是直接发布在客户的开发者账号上面,这个到后期的话就有一个转让的事情,俗称“过户”. 步骤如下 ...