微信小程序开发——JAVA后端解析小程序json数组对象

2020-01-11  本文已影响0人  冻冬龙东墙

在用JAVA与小程序联合开发项目能很好的进行前后端开发,

在项目中数据主要以JSON的格式进行传输,因此JAVA在后台处理时常常需要对JSON对象进行解析来获取特定数据

在小程序中的JSON数据转换

var a1 = "aa";
    var a2 = 22;
    var a3 = 33;
    var arr = {"01": a1, "02": a2, "03": a3};
    var arrJosn = JSON.stringify(arr);
    //json对象转换为json格式的字符串
    console.log(arrJosn);


    //json格式的字符串转化为json格式
    var jsonObject = JSON.parse(arrJosn);
    console.log(jsonObject);

控制台输出结果为

输出结果
在JAVA后端解析JSON数据
在后台一般需要取特定数据或进行数据库的CRUD操作,因此需要对数据进行解析

例子:后台解析小程序传入的json对象数组
小程序代码

var that = this
var address = {"city": "GuangZhou","Province":"GuangDong","Country":"China"}
 var ordersArray = [{"id": 1, "name": "user1"},{"id": 2, "name": "user2"}]
    that.setData({ address: address, ordersArray: ordersArray})
    wx.request({
      url: 'http://localhost:8080/orders/getOrder',
      data:{
        openid:"test1",
        address: that.data.address,
        ordersArray: that.data.ordersArray
      },
      method:"GET",
      success:(res)=>{
        console.log(res.data)
      }
    })

后台代码为

@RequestMapping("/getOrder")
    @ResponseBody
    public String getOrder(@Param("openid") String openid,@Param("address") String address,
                         @Param("ordersArray") String ordersArray){
        System.out.println(openid);
        System.out.println(address);
        System.out.println(address);
        //把json对象数组转换为普通数组
        JSONArray ja = JSONArray.parseArray(ordersArray);
        System.out.println(ja);
        System.out.println(ja.size());
        //取该数组第一个对象
        System.out.println(ja.get(0));

        //把json对象转换为普通对象
        JSONObject jo = JSONObject.parseObject(address);
        System.out.println(jo);
        System.out.println(jo.size());
        //根据key值为city取其值
        System.out.println(jo.get("city"));
    return "success";
    }

通过上面例子可把json对象数组转换为普通数组,把json对象转换为普通对象来获取到我们需要值,实现起来也很简单啦

上一篇 下一篇

猜你喜欢

热点阅读