目 录CONTENT

文章目录

com.fasterxml.jackson

FatFish1
2025-07-02 / 0 评论 / 0 点赞 / 1 阅读 / 0 字 / 正在检测是否收录...

jackson的使用案例

jackson核心对象 —— objectMapper

objectMapper是将object和json进行互转的核心类

json转object —— readValue方法

readValue可以有两个参数,其中参数1是从哪读,可以是file、流、url等,参数2是解析成什么类型。readValue有各种重写类型,其中最常用为:

readValue(String, Class);

将String的json串解析为对应的Class;此处使用自己构建的Dto解析json也可以。

也可以通过核心抽象组装类型TypeReference<T>进行组装类的转化,例如:

readValue(String, new TypeReference<List<String>>() {});

此处需要注意,想从str中解析出list,必须序列化的时候也拿list来序列化,直接拿str来序列化是不可能解析成长度为1的list的

一般来说,把对象进行序列化和反序列化最合适。

object转json —— writeValue方法

如果object是JsonNode类型可以直接读,不一定要转。

return object instanceof JsonNode ? object.toString() : om.writeValueAsString(object);

否则可以使用writeValue方法转成想要的类型。

writeValue有多种入参的版本,还有writeValueAsString、writeValueAsBytes方法

jackson源码赏析

0

评论区