我的问题是我有两个类(class),如下
public class User implements UserDetails {
@Id
@GeneratedValue
@Column(name = "user_id")
private Long Id;
@OneToOne
@JsonManagedReference
private Wallet wallet;
.........
// Getters and setters..
}
还有
@Entity
public class Wallet {
@Id
@GeneratedValue
private Long Id;
@OneToOne()
@JsonBackReference
private User user;
.........
//Getters and setters.
}
有时我需要来自User
模型的Wallet
信息,而有时我需要相反的信息。
因此,如果我在任何一侧写入 Json Ignore 或 Json back reference,我将无法获取其他对象。
例如:如果我在Wallet
类中编写@JsonBackReference
,我在查询时无法获取User
信息钱包
。
我的问题是如何处理这种情况。我已经尝试了 @JsonIgnore
和 @JsonBackReference
提前致谢。
最佳答案
如果您使用的是 Jackson 2.0+,您可以使用 @JsonIdentityInfo
来解决您的问题。
这里是docs有一个完整的例子。
关于java - 如何处理Jackson的无限递归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37404361/