Java服务器端编程web开发

web开发之数据的接收

2018-07-16  本文已影响1人  根艮哏艮根

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

注:
1.在接收json格式的数据的时候我们需要导入相应的jar包,本文用的是:fastjson,另外还有其他的jar包,如:开源的Jackson,Google的Gson,json-lib等
2.本列使用的是JFinal框架

1.汇总为json数组格式

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

String jsonStr = getPara("user");
User users = JSON.parseArray(jsonStr, User.class);

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

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

2.汇总为json对象格式

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

String jsonStr = getPara("user");
JSONObject jsonObject = JSONObject.parseObject(jsonStr);
User user = JSONObject.toJavaObject(jsonObject, User.class);

3.汇总为数组

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

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

String[] array = getParaValues("key");

然后将对应的数组转换为自己需要的数据格式即可

上一篇 下一篇

猜你喜欢

热点阅读