java - 基于 Jackson 字段的序列化

标签 java json jackson

我认为 Jackson 进行基于方法的序列化,有什么方法可以让它基于字段吗?

例如:

class Bean {
    Integer i;
    String s;

    public Integer getI() { return this.i; }
    public void setI(Integer i) { this.i = i; }
    public bool isSetI() { return this.i != null; }

    // same for s as well
}

输出的 JSON 有“i”和“setI”。无论如何我可以覆盖它只得到“我”吗? 如果有一种方法可以在不向类添加任何注释的情况下执行此操作(它们是自动生成的),那就太好了。

最佳答案

查看@JsonAutoDetect 注释。示例:

@JsonAutoDetect(fieldVisibility=Visibility.ANY, getterVisibility=Visibility.NONE, isGetterVisibility=Visibility.NONE, setterVisibility=Visibility.NONE)
public class Bean {
    Integer i;
    String s;

    Integer getI() { return this.i; }
    void setI(Integer i) { this.i = i; }
    bool isSetI() return { this.i == null; }

    // same for s as well
}

关于java - 基于 Jackson 字段的序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10240372/

相关文章:

java - 当导航 View 上的对象不为null时,null对象引用错误,请查看详细信息

json - 在 Symfony3 中捕获登录失败事件

java - 我应该使用 POJO 还是 JSONObject 进行 REST 调用

java - Jackson - 反序列化通用类变量

java - JPA - jackson - @JsonAutoDetect - 圈子关系 OneToMany - 防止 LOOP 加载错误

java - @JsonView : different perspectives

java - 从 Java 调用 curl 命令

java - 在 selenium 中输入 iframe

java - 尝试创建基本的 JFace 应用程序,不确定问题是什么

java - Restful PUT 方法的 ModelAttribute 未填充值 ( JSON )