【发布时间】:2019-05-17 17:40:08
【问题描述】:
我正在设计数据库的模型:
@Entity
@Table(name="t_urna")
public class Urna implements Serializable {
@OneToMany(mappedBy = "urna",
cascade = CascadeType.ALL,
orphanRemoval = true, fetch = FetchType.EAGER)
@JsonIgnore
private Set<Vot> vots = new HashSet<>();
..
}
@Entity
@Table(name="t_vot")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Vot implements Serializable {
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "urna_id")
@JsonIgnore
Urna urna;
}
我想知道在这两个类中设置 FetchType.EAGER 是否会导致问题,例如一个永远结束的循环或一些堆栈溢出......以及这是否是一个好习惯
【问题讨论】:
-
This 应该有帮助...
-
您不会遇到循环问题。但 EAGER 获取的是 code smell。我不建议在任何情况下使用它。
标签: spring hibernate spring-mvc spring-data-jpa spring-data