我正在使用 Jackson 的 @JsonIdentityInfo 从 JSON 中删除循环对象。
假设以下是 Java 类
A、B、C 类
以下是结构,
Class A{
int id;
B b;
C c;
}
Class B{
int id;
C c;
}
我的对象是(A)
{
id:1,
b:{
id: 2,
c:{
id: 3
}
},
c: {
id: 3
}
}
它正在将对象更改为
{
id:1,
b:{
id: 2,
c:{
id: 3
}
},
c: 3
}
因为C有相同的id, 我希望将其实现为广度优先,即第一级应该是删除对象并提供属性,但深度级别应该这样做,有没有办法像下面那样实现它?
{
id:1,
b:{
id: 2,
c:3
},
c: {id:3}
}
最佳答案
不,序列化是按深度优先进行的,而改变这一点可能需要在写入 JSON 之前在内存中缓冲整个输出图。
关于java - jackson 的@JsonIdentityInfo 广度优先,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37672242/