我正在尝试通过使用将持久化到我的 MongoDB 中的 JSON 数组反序列化为 Java 对象Jackson
。我发现许多提到的教程通过添加来处理这种多态性:
@JsonTypeInfo(use=Id.CLASS,property="_class")
到一个Super-class
。但是,就我而言,我无法修改Super-class
. 那么,是否有一些解决方案可以在不修改的情况下解决它Super-class
?这是我的代码:
public class User {
@JsonProperty("_id")
private String id;
private List<Identity> identities; // <-- My List contains objects of an abstract class; Identity
public User(){
identities = new ArrayList<Identity>();
}
public static Iterable<User> findAllUsers(){
return users().find().as(User.class); // Always give me the errors
}
/*More code*/
}
它总是给我错误 - Can not construct instance of securesocial.core.Identity, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information
。