gpt4 book ai didi

java - Jackson 如何在自定义序列化器/反序列化器中检索父 bean

转载 作者:搜寻专家 更新时间:2023-11-01 01:21:01 33 4
gpt4 key购买 nike

在自定义序列化器/反序列化器中,有没有办法检索字段的父 bean?

例如:

public class Foo {

@JsonSerialize(using = MyCustomSerializer.class)
public Bar bar;

}

public class Bar { }

public class MyCustomSerializer extends JsonSerializer<Bar> {

@Override
public void serialize(
Bar value,
JsonGenerator jgen,
SerializerProvider serializers)
throws IOException, JsonProcessingException
{
// get Foo ??
}
}

在这里,我想在我的序列化程序中获取 Foo,而不必在 Bar 中引用。

最佳答案

如果您使用的是 Jackson 2.5,则可以通过 JsonGenerator.getCurrentValue() 访问父对象。或者,通过 getOutputContext()(它有 getParent() 以及 getCurrentValue() 方法)在层次结构中更上一层楼。这也可以通过 JsonParser 用于自定义反序列化器。

关于java - Jackson 如何在自定义序列化器/反序列化器中检索父 bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30621562/

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