gpt4 book ai didi

spring - Spring Data Rest 中的@OneToMany stackoverflow

转载 作者:行者123 更新时间:2023-12-04 03:02:04 25 4
gpt4 key购买 nike

我有一个问题实体,它有如下选项列表:

@OneToMany(mappedBy = "question")
List<Option> options;

在 Options 实体中,我将关系指定为:

@ManyToOne
@JoinColumn(name="question_id")
Question question;

当我点击 /api/questions 时,它工作正常但是当我点击 /api/questions/1 时,它给出了 java.lang.StackOverflowError: null

我做错了什么?

最佳答案

因为Option指Question,Question指Option。你应该添加@JsonIgnore 到你的类(class)之一,以防止彼此无限链接。 toString() 方法也可以做同样的事情。如果您使用 Lombok 或生成默认的 toString 方法,它也可能导致 statckoverflow。因为类(class)联系类(class)。为防止这种情况,请尝试在其中一种 toString 方法中排除类上的链接。在 Lombok 的 @ToString 注释中添加排除语句并排除 Option 或 Question。也许你调用 cases 循环的 toString 方法。 @ToString(排除 = {"选项"})

关于spring - Spring Data Rest 中的@OneToMany stackoverflow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48399607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com