我的Angular 前端调用spring后端,它返回一个复杂的数据对象。这个物体的结构基本上是这样的。
public class ObjectX {
Object entity;
List<ObjectX> children;
}
这意味着可以有无限嵌套的子对象。实体对象有一个id字段à类的注解为:
@JsonIdentityInfo(
generator = PropertyGenerator.class,
property = "id"
)
我真的无法改变这一点,因为该类来自外部库。
现在,当一个对象多次是父对象的子对象时(意味着同一个对象在json中至少出现两次),第二次,只有id被写入“实体”中的json中,因为注解导致对象不再被完全序列化,而是使用此id引用第一个对象。当我使用“httpclient.get”从Angular 前端调用端点并将输出Map到对象时,json未正确反序列化,并且对象未正确初始化,因为未使用正确的属性调用构造函数。
我怎样才能解决这个问题?其他类似的答案指向一些javascript库(比如jsog或jacksonjs),但几乎没有任何一个库被维护。
暂无答案!
目前还没有任何答案,快来回答吧!