gpt4 book ai didi

java - 如何使 Immutables 库跳过序列化可选字段

转载 作者:行者123 更新时间:2023-12-02 03:18:27 37 4
gpt4 key购买 nike

我正在使用 Immutables 库 ( https://immutables.github.io )。我需要我的类序列化为 JSON(我使用 Jackson)。我想跳过输出 JSON 中的可选字段。在 Immutables 之前,我提供了 @JsonInclude(JsonInclude.Include.NON_EMPTY)在类(class)层面。

看来,Immutables 并不尊重该注释。如果我用 @JsonInclude(JsonInclude.Include.NON_EMPTY) 注释每个可选字段效果很好。

是否可以指示 Immutables 使用类级别(而不是字段级别)注释跳过序列化空选项?我明白了org.immutables.value.Value.Style#additionalJsonAnnotations但没有使用它的自定义传递注释。

我的类路径中有 jackson-datatype-jdk8,而我的 com.fasterxml.jackson.databind.ObjectMapper

mapper.registerModule(new Jdk8Module().configureAbsentsAsNulls(true));

最佳答案

自版本 v2.3.6(可能更早)以来,问题已在 Immutables 中得到解决。Immutables 尊重 @JsonInclude@JsonPropertyOrder 以及 Jackson 的其他类级(或字段级)注释。这些注释被复制到生成的 Immutable 类中,并且它们按预期工作。

关于java - 如何使 Immutables 库跳过序列化可选字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39961189/

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