aws-java-sdk添加到pom.xml时,我现有的@JsonIgnore注释不再起作用。但是,当我从pom文件中删除Amazon SDK(aws-java-sdk)时,JsonIgnore效果很好。这种情况很奇怪,我不知道原因。

Jackson版本为1.9.13,Amazon SDK版本为1.6.12

我需要使用@JsonIgnore来防止在Hibernate模型上进行循环引用。我还需要使用Amazon SDK与Amazon S3一起使用。

任何帮助,将不胜感激。

编辑:

Class Car  {
    private String title;
    @JsonIgnore
    private Model model;
    …
}

Class Model  {
    @ManyToOne
    @JoinColumn(name="manufacturer_id", referencedColumnName="id")
    private Manufacturer manufacturer;
    …
}

Class Manufacturer {
    @OneToMany(mappedBy = "manufacturer")
    @JsonIgnore
    private List<Model> models;
    …
}

最佳答案

@Matt B是正确的... AWS开发工具包依赖于jackson-annotationsjackson-databindjackson-core。在Jackson v1.9之后更改了@JsonIgnore的用法:http://fasterxml.github.io/jackson-annotations/javadoc/2.0.2/com/fasterxml/jackson/annotation/JsonIgnore.html

关于java - 将aws-java-sdk添加到pom时,@ JsonIgnore不起作用。为什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22231061/

10-10 15:34