小编Ada*_*Yao的帖子

JPA双向Onetomany json无限循环

该特定环境下的程序\xef\xbc\x9a\n EJB3.0 + JPA + jersey Web Service

\n\n

第一个实体:

\n\n
@Entity\n@Table(name = "student_by_test_yao")\n\npublic class StudentTest implements Serializable {\n    @Id\n    @GeneratedValue\n    private Integer id;\n    private String name;\n\n    @ManyToOne\n    @JoinColumn(name = "class_id")\n    private ClassTest classes;\n\n    public StudentTest() {}\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n\n

第二实体:

\n\n
@Entity\n@Table(name = "class_by_test_yao")\npublic class ClassTest implements Serializable{\n    @Id\n    @GeneratedValue\n    private Integer id;\n    private String name;\n\n    @OneToMany(mappedBy = "classes",cascade = CascadeType.ALL, fetch=FetchType.EAGER)\n    private List<StudentTest> students;\n\n    public ClassTest() {}\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n\n

当我拿到ClassTest的学生名单时。\n例外是:

\n\n
com.fasterxml.jackson.databind.JsonMappingException:\nInfinite recursion (StackOverflowError)\n
Run Code Online (Sandbox Code Playgroud)\n\n

如果我更改获取 FetchType.LAZY 异常是:

\n\n …

java json hibernate jackson

5
推荐指数
2
解决办法
9999
查看次数

标签 统计

hibernate ×1

jackson ×1

java ×1

json ×1