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();