Ajax传递数组

Ajax传递数组

Ajax传递数组与后端接收

在此记录刚开始做开发的时候,Ajax都不怎么会用,都只是传一些简单的字符串,那Ajax怎么将数组传到服务器,先看一下Ajax的结构

//建立两种类型的数组,这两种类型的数组都是经常用到的

var arryA = new Array();

var arryB = new Array();

arryA.push({"name": "张三", "sex": "男"});

arryA.push({"name": "花花", "sex": "女"});

arryA.push({"name": "黑皇", "sex": "狗"});

console.log(arryA);

arryB.push("aaa","bbb","ccc");

console.log(arryB);

$.ajax({

url: "", //上传URL

type: "POST", //请求方式

data: {

"test": "aaa",

"test2": "bbb",

"arryA": JSON.stringify(arryA),//将数组转化成json字符串

"arryB": JSON.stringify(arryB)}, //需要上传的数据

dataType: "JSON", //设置接受到的响应数据的格式

success: function (data) { //请求成功

console.log(data);

},

error: function () {

alert("出错啦...");

},//表示如果请求响应出现错误,会执行的回调函数

});

前端打印效果:注意看一下这两种数组的格式

后端接收代码

String test = request.getParameter("test");//正常获取数据点的代码

String arryA = request.getParameter("arryA");//注意此时获取的是json字符串

String arryB = request.getParameter("arryB");//而不是获取的数组,所以是不能直接使用的

System.out.println("test=" +test);

System.out.println("arryA=" +arryA);

System.out.println("arryB=" +arryB);

//将json字符串转成jsonarry

JSONArray jsonarryA = JSON.parseArray(arryA);

JSONArray jsonarryB = JSON.parseArray(arryB);

/*

* arryA和arryB是两种数组,

* arryA类似于 List>数组,可传输的数据更加复杂

* arryB类似于List<>数组,传输的数据相对较简单

* 日常用的比较多的是 List>

* 以下为两种数组转化为对象,就可以获取你想要的数据了*/

/*A数组需要先jsonarryA.get(0)根据索引获取map数组的字符串,再将map转为json对象

* 然后就可以根据Key获取Value值*/

JSONObject myobjA = JSONObject.parseObject(jsonarryA.get(0).toString());

System.out.println(myobjA.getString("name"));

System.out.println(myobjA.getString("sex"));

/*B数组直接就可以用一个循环取数据*/

System.out.println(jsonarryB.get(0));

看一下打印效果:至此前端到后端的数组的传输和接收就ok了

创作不易,如果这篇文章能够帮助到你,希望能关注或收藏一下博主,如果文章内容有问题也可留言讨论,我们一起学习,一起进步!!

相关推荐

大波浪卷发怎么维持 6招对抗变形扁塌
38365365.com打不开

大波浪卷发怎么维持 6招对抗变形扁塌

⌛ 07-17 👁️ 707
叙利亚国家足球队
哪个才是365官网

叙利亚国家足球队

⌛ 07-09 👁️ 9567
还在找可以约的软件?这些交友APP值得一试!
38365365.com打不开

还在找可以约的软件?这些交友APP值得一试!

⌛ 06-29 👁️ 1016