首先,抱歉我的英语不好;使用双向JACKSON
其次,我有以下代码:
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class, property = "id")
public class UserAccount implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private List<Venda> vendas;
}
及以下:
public class Venda implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private UserAccount cliente;
}
所以,一切都很好,而且得到序列化JSON在这条路上(当我问对于UserAccount):
[
{
"id": 1,
"vendas": [
{
"id": 1,
"cliente": 1,
}
]
}
]
当我问一个文达:
[
{
"id": 1,
"cliente": {
"id": 1,
"vendas": [
{
"id": 1,
"cliente": 1
}
]
}
}
]
的问题是,我不需要对“vendas”中的“cliente”的信息在第一种情况下,但在第二个我需要“客户”信息,但我不希望他的“vendas”,因为我已经得到它;
我已经trid @JsonIgnore并没有为我工作,我该怎么办? PS:我正在使用GSON从JSON获取.Class,并且我得到了一个可怕的异常,因为有时候客户端是一个对象,有时是整数,所以如果你们有另一个解决方案让客户端和服务器端不改变他们的类型,我也会知道。 :(
可以使用Gson或Jackson。不是 –
@ cricket_007我会只使用杰克逊进行新的测试,之后,我会回来并显示结果。 –