gpt4 book ai didi

java - Jackson,特定字段名称的自定义反序列化

转载 作者:搜寻专家 更新时间:2023-10-31 20:01:57 24 4
gpt4 key购买 nike

我想知道是否可以根据字段名自定义json的反序列化,例如

{
id: "abc123",
field1: {...}
other: {
field1: {....}
}
}

我是以前的 json,我想在 json 的任何级别为名为“field1”的字段创建一个自定义反序列化器。

原因:我们将数据保存为 JSON,并且我们有一个返回此类数据的 REST 服务,但在返回之前,该服务必须在“field1”属性中注入(inject)额外信息。

类型是非常动态的,所以我们不能定义一个Java类来映射json来使用注解。

第一种方法是反序列化为 Map.class,然后使用 JsonPath 搜索 $..field1 模式,但对于较大的对象,此过程开销很大。

感谢任何帮助。

谢谢,

埃德温·米格尔

最佳答案

您应该考虑注册一个 custom deserializerObjectMapper为此目的。

然后您应该能够简单地将您的 JSON 流映射到 Map<String, Object>知道你的 field1对象将由您的自定义代码处理。

关于java - Jackson,特定字段名称的自定义反序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27494911/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com