0%

Java-JSON数据处理

Java-JSON数据处理

Jackson

Jackson使用详解: https://juejin.cn/post/6844904166809157639

1
2
3
4
5
6
7
8
9
JsonNode jsonNode = objectMapper.readValue(callbackBodyStr, JsonNode.class);
oss.setUserPort(jsonNode.get("port").asInt());
oss.setUserIp(jsonNode.get("ip").asText());
oss.setUid(jsonNode.get("uid").asLong());
oss.setImageAve(jsonNode.get("imageAve").toString());
oss.setImageInfo(jsonNode.get("imageInfo").toString());
oss.setAvinfo(jsonNode.get("avinfo").toString());
oss.setFsize(jsonNode.get("fsize").asInt());
oss.setStatus(10);
1
2
3
4
5
6
//允许使用未带引号的字段名
mapper.configure(Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);
//允许使用单引号
mapper.configure(Feature.ALLOW_SINGLE_QUOTES, true);
// 忽略pojo类属性中缺少的json字段
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

fastjson2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Oss oss = JSONObject.parseObject(callbackBodyStr, Oss.class);

JSONObject jsonObject = JSON.parseObject(callbackBodyStr);
Oss oss = new Oss();
oss.setBucket(jsonObject.getString("bucket"));
oss.setEtag(jsonObject.getString("etag"));
oss.setKey(jsonObject.getString("key"));
oss.setPersistentId(jsonObject.getString("persistentId"));
oss.setFsize(Integer.getInteger(jsonObject.getString("fsize")));
oss.setFname(jsonObject.getString("fname"));
oss.setMimeType(jsonObject.getString("mimeType"));
oss.setEndUser(jsonObject.getString("endUser"));
// oss.setImageAve(jsonObject.getJSONObject("imageAve").toJSONString());
// oss.setImageInfo(jsonObject.getJSONObject("imageInfo").toJSONString());
// oss.setAvinfo(jsonObject.getJSONObject("avinfo").toJSONString());
oss.setImageAve(jsonObject.getString("imageAve"));
// oss.setImageInfo(jsonObject.getString("imageInfo"));
oss.setExt(jsonObject.getString("ext"));
oss.setExif(jsonObject.getString("exif"));
oss.setUuid(jsonObject.getString("uuid"));
oss.setRemark(jsonObject.getString("remark"));
oss.setUserIp(jsonObject.getString("ip"));
oss.setUserPort(jsonObject.getInteger("port"));
oss.setUid(jsonObject.getLong("uid"));
oss.setStatus(10);
oss.setDomain(jsonObject.getString("domain"));

oss.setAvinfo(JSON.toJSONString(oss.getAvinfo()));
oss.setImageAve(JSON.toJSONString(oss.getImageAve()));