杰克逊(Jackson)如何在自定义序列化器/反序列化器中检索父bean

激动剂_:

在自定义序列化器/反序列化器中,是否可以检索字段的父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

StaxMan:

如果您使用的是Jackson 2.5,则可以通过访问父对象JsonGenerator.getCurrentValue()或者,进一步向上层次结构,通过getOutputContext()(具有getParent()getCurrentValue()方法)。也可以通过JsonParser自定义解串器获得。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

杰克逊反序列化不是在自定义解串器调用反序列化

自定义JSON序列化从Java科特林元杰克逊

杰克逊自定义序列化和反序列化

如何自定义序列化杰克逊日期,@JsonSerialize不工作

杰克逊:反序列化的自定义XML中的属性POJO

如何在Gson中制作自定义列表反序列化器?

如何在杰克逊反序列化OffsetDateTime时保留偏移量

如何在自定义序列化程序中访问默认的杰克逊序列化

使用杰克逊可自定义序列化和反序列化

如何在杰克逊中编写自定义属性反序列化器

杰克逊自定义反序列化器无法在春季启动中工作

具有自定义条件的杰克逊多态反序列化

无需编写自定义序列化器和/或反序列化器,即可对第三方类进行杰克逊序列化和反序列化

杰克逊反序列化器:在现场使用@JsonCreator和@JsonProperty吗?

使用杰克逊的对象数组的自定义序列化器

杰克逊自定义日期序列化器

杰克逊使用自定义日期格式错误地反序列化Joda日期

在自定义序列化器杰克逊内部配置objectmapper?

杰克逊:如何反序列化嵌套的自定义地图和列表?

无法使用杰克逊反序列化器反序列化java.awt.color

杰克逊将地图序列化到自定义输出列表

杰克逊自定义序列化对象

如何使用杰克逊对象映射器反序列化

杰克逊:反序列化map <String,Object>到自定义嵌套Pojo

Spring Boot 2.1.4:@Autowired在自定义的Jackson序列化器/反序列化器中不起作用,如何启用它?

如何在杰克逊中反序列化抽象类

杰克逊反序列化:自定义对象工厂

杰克逊自定义序列化器JSON格式

Jackson 的多态序列化/反序列化和自定义序列化器/反序列化器