gpt4 book ai didi

java - 创建从 Jackson 的 ObjectNode 继承的自定义类

转载 作者:行者123 更新时间:2023-12-01 15:05:00 35 4
gpt4 key购买 nike

我想扩展 ObjectNode,这样我就可以有几个辅助方法来从 JSON 中获取几个特定字段。例如

public class MyNode extends ObjectNode {
public void Long getTimestamp() {
return this.get(HEADER).get(TIMESTAMP).asLong();
}
}

但我遇到的问题是 ObjectMapper().readTree("<...my JSON here...>") 返回一个 JsonNode 对象,我显然无法将其转换为 MyNode。

并且 ObjectNode 没有构造函数接受另一个 JsonNode。将 JSON 的字符串表示形式转换为 MyNode 对象的最佳方法是什么?

最佳答案

您需要创建自定义JsonNodeFactory(并使用ObjectMapper注册它),这应该允许您提供自定义实现——它们必须是子类;但您只需要创建自己的实例,然后反序列化器就可以填充它们。因此,您不需要使用复制构造函数或转换。相反,调用工厂来创建新的空实例。

关于java - 创建从 Jackson 的 ObjectNode 继承的自定义类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13087546/

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