Java后台 JSON数据处理

后台处理接收到的json数据,这里记录几种格式,都是常见的。

com.alibaba.fastjson 阿里巴巴的包

格式:(普通嵌套)
在这里插入图片描述
取值:

String scope= JSONObject.parseObject(res).getJSONObject("data").getString("scope");

格式:(数组型)

String json = "{\"data1\":[{\"name\":\"aa\",\"age\":\"12\"},{\"name\":\"bb\",\"age\":\"13\"}],\"data2\":{\"nowpage\":1,\"pagesize\":2}}";

取值:

JSONObject object = JSONObject.parseObject(json);
JSONArray array = object.getJSONArray("data1");
for(int i = 0; i < array.size(); i++){
   JSONObject o = array.getJSONObject(i);
   System.out.println(o.get("age"));
   System.out.println(o.get("name"));
}

格式:(直接就是数组)

String jaStr = "[{user:{name:\"张三\",age:\"20\"}},{score:{yuwen:\"80\",shuxue:\"90\"}}]"; 

取值:

//取值:
//将jsonArray字符串转化为JSONArray 
    JSONArray jsonArray = JSONArray.fromObject(jaStr); 
    //取出数组第一个元素 
    JSONObject jUser = jsonArray.getJSONObject(0).getJSONObject("user"); 
    //取出第一个元素的信息,并且转化为JSONObject 
    String name2 = jUser.getString("name"); 
    String age2 = jUser.getString("age"); 
  • :其实主要就是,看json格式转,普通的:getJSONObject, 数组的:getJSONArray , 如果是嵌套的就,再看格式 .getJSONObject/或者.getJSONArray 再取key值.

格式:json字符串数据,转对应 List. eg:轮播

List<Banner> bannerList = JSONArray.parseArray(banner, Banner.class);

格式:List,转对应 JSON.

JSON.toJSON(orgradesRepository.list()).toString()

JSON转实体类:

SocketMsg socketMsg = JSON.toJavaObject(JSONObject.parseObject(message),SocketMsg.class);

实体类转JSON:

String jsonstring = JSON.toJSONString(loginBeen);

JSON字符串生成 :

String jsonTemplateParam= JSON.toJSONString(map);

你可能感兴趣的:(JAVA基础)