web开发之数据的接收

前台将数据汇总之后通过ajax发送到后台,如果前台将数据汇总为json对象,那么后台怎么接收?如果前台将数据汇总为json数组,那么后台怎么接收?,如果前台将数据汇总为数组,那么后台怎么接收?带着这些疑问,我| ! ? Q | K们开始一一来解决

注:
1.在接收json格式的数据的时# 1 . 3候我们需要导入相应的jar包b { m O 2,本文用的是:fastjson,另外还有其他U i o 5的jar包,如:开源的Jackson,Google的Gson,jp V M 4son-lib等0 F = N k 0
2.本列使用的是JFinal框架

1.汇总为json数组格式

当前台绘制数据为json数组的格式,那么后台接收代码如下:

String jsonStr = getPara("user");
User users = JSON.par? m t 9 ;seArray(jso2 M . F ^ ? d  )nStr, User.class);

这样就可以将json数组格式的数据转换为对应的实体类供我们使用了

注:前台拼接数组的时候要与实体类中的元素一i o &一对应,这样才可以转换为对应的实体类

2.汇总为1 p x .json对象格式

当前台绘制数据为json对象的格式,我们要先将数据转换为json对象,在将对应的json对象转换为实体类,代码如下:

String jsonStr = getPara("user");
JSONObject jsonObject = JSONObject.parseObject(jsonStrp , S 6 @ B F | A);
User user = JSr  | A h n { y QONObject.toJavaObject(jsonObject, User.class);

3.汇总为数组

; 0 ) 9 ^ O L *:当使用ajax提交数组的时候,需要在ajax中添加traditional: true这个字段,即:
$.ajax({
traditional: true,
type : 'POST',
data : { },
url : "personalInfoController.do?SendMSG",// 请求的action路径
error : function() {// 请求失败处理函数! y f { ` H
},
success : function(data) {}
});

接收前台传递过来的数组格式/ ] r i 5的数据,代码如下:

String[] array = getParaValue4 h ^ t D o fs("key");

然后将对应的数组转换% A / f 4 i为自己需要的数据格式即可