我正在像这样注释我的 User 类以删除输出的循环格式:
@Entity
@Table(name = "USER")
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class, property = "id", scope = User.class)
public class User extends AbstractValueObject {
private Integer id;
private String name;
.....
}
public class Load extends AbstractValueObject {
private Integer id;
private User postedBy;
}
所以每当我获取负载列表时,它都会给我输出如下 JSON:
[
{
"id" : 1,
"postedBy" : {
"id":1,
"name":"SOF"
}
},
{
"id" : 2,
"postedBy" : 1
}
]
但是客户端需要它的原始格式——比如说每个加载对象都应该包含完整的postedBy
对象。客户端在 Android - Java 中。
在 Android 端有什么方法可以在 Android 上反序列化原始格式的对象吗?
预期输出:
[
{
"id" : 1,
"postedBy" : {
"id":1,
"name":"SOF"
}
},
{
"id" : 2,
"postedBy" : {
"id":1,
"name":"SOF"
}
}
]
我尝试使用 JSOG,但在某些情况下它失败了。
任何帮助将不胜感激。 :)
最佳答案
您可以使用 Jsog Converter,它提供了对对象进行编码和解码的库。 https://github.com/jsog/jsog
关于java - 反序列化由@JsonIdentityInfo 序列化的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52946589/