最近做的项目遇到了jsckson序列化对象无限递归的问题。
报错内容为:
org.codehaus.jackson.map.JsonMappingException: Infinite recursion (StackOverflowError)
解决办法:
实体A中添加注解@JsonManagedReference
@Entity
@Table(name = "A")
public class A{
@OneToMany(mappedBy = "a",fetch = FetchType.LAZY,cascade = {CascadeType.ALL})
@JsonManagedReference
private Set<B> bSet;
...省略get/set...
}
实体B中添加注解@JsonBackReference
@Entity
@Table(name = "B")
public class B{
@ManyToOne
@JoinColumn(name = "aId",nullable = false)
@JsonBackReference
private A a;
...省略get/set...
}