java - 在子类中覆盖@jsonIgnore

标签 java json jackson

我有一个类(class)家长

public class Parent
{
   private int id;

   @JsonIgnore
   int getId() {}

   void setId(int id) {}
}

我有一个派生自 Parent 的子类

public class Child extends Parent
{
    @JsonProperty   // just to explicitly tell jackson to serialize this
    @Override
    int getId() {}

    @Override
    void setId(int id) {}
}

我实际上不希望在返回 Parent 的对象时序列化 id 属性,但在返回 Child 类的对象时应该序列化它。

我认为如果 Parent 是一个接口(interface),则覆盖可见性会起作用,但我不确定其行为是否与父类(super class)相同。

有没有简单的解决方案?我真的很感激你的回答。德克萨斯州。

最佳答案

您在 Child 类中想要的不是 @JsonProperty 而是 @JsonIgnore(false)

关于java - 在子类中覆盖@jsonIgnore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15956197/

相关文章:

java - CXF 捆绑与 CXF 捆绑 jaxrs

java - 如何使用方向键移动图像

java - Headless Chrome - 获取空白页面源

json - 如何在 IntelliJ IDEA 中复制 JSON 中的路径?

java - 使用 Jackson 从 JSON 中获取单个字段

java - 请求未到达 Controller 但仍收到 200 响应

json - 这是从 S3 : Spark 读取 Json 文件的最快方法

c# - 根据子元素值(C#、Json.NET)为元素选择 token 模式

java - UberJar 无法使用 Jackson YAML 运行 : Intellij Maven java. lang.NoClassDefFoundError

java - 使用 Jackson 解析 JSON 时获取特定值