FastJson最佳实践

fastjson可以自动映射pos_id到posId。

JSON.parseObject(String, Class): 从String到POJO

(JSONObject) JSONObject.parseObject(String): 从String到JsonObject

(JSONArray) JSONArray.parseArray(String): 从String到List

(String) JSONObject.toJsonString(): 从JsonObject到String

从subString中转换为POJO

{
    "data":{
        "setType":1,
        "timestamp":1234567890
    },
    "code":0,
    "message":""
}
JSONObject jsonObject = JSONObject.parseObject(requestData);
String dataJsonStr = jsonObject.getString("data");
JsonData jsonData = JSON.parseObject(dataJsonStr, JsonData.class);

从String转换为POJO

{
    "setType":1,
    "timestamp":1234567890
}
JsonData jsonData1 = JSON.parseObject(data, JsonData.class);

从String转换为Map<String, String>

{
    "position":"xxxx",
 
}
Map<String, String> positionInfo = JSONObject.parseObject(position, new TypeReference<Map<String, String>>(){});

从String[]转换为POJO[]

{
    "data":[
        {
            "timestamp":1234567890
        },
        {
            "timestamp":1234567890
        }
    ],
    "code":0,
    "message":""
}
JSONObject obj = JSONObject.parseObject(str);
String dataList = obj.getString("data");
JSONArray ary = JSONArray.parseArray(dataList);

ary.stream()
	.map((obj) ->{JSON.parseObject(((JSONObject)obj).toJSONString(), T.class})
	.collection(Collectors.toList());

从POJO到String

String str = JSON.toJSONString(POJO);

从JsonObject到String

String str = JSONObject.toJSONString();
posted @ 2022-08-24 16:34  言思宁  阅读(50)  评论(0编辑  收藏  举报