我正在尝试使用Jackson 1.9.10反序列化此类的实例:
public class Person { @JsonCreator public Person(@JsonProperty("name") String name, @JsonProperty("age") int age) { // ... person with both name and age } @JsonCreator public Person(@JsonProperty("name") String name) { // ... person with just a name } }
当我尝试这个我得到以下
冲突的基于属性的创建者:已经有… {界面org.codehaus.jackson.annotate.JsonCreator @ org.codehaus.jackson.annotate.JsonCreator()}],遇到了…,注释:{接口org.codehaus。 jackson.annotate.JsonCreator @ org.codehaus.jackson.annotate.JsonCreator()}]
有没有办法使用Jackson重载带有重载的构造函数的类?
谢谢
尽管没有正确记录,但是每种类型只能有一个创建者。您可以在类型中具有任意数量的构造函数,但是只有其中一个应该在其@JsonCreator上具有注释。
@JsonCreator