我;'从Hibernate开始。我有一个简单的问题。 我试图在JSF2中做一个app应该模仿简单的足球统计门户的应用程序。有几个实体:...俱乐部和球员。 我想在俱乐部和球员之间做一个关系: 俱乐部:
@OneToMany(mappedBy = "playersClub",
orphanRemoval = true
)
@Cascade({CascadeType.ALL})
@ContainedIn
private Set<Player> players;
和玩家:
@ManyToOne
// (
// fetch = FetchType.EAGER
// )
@Cascade({org.hibernate.annotations.CascadeType.ALL})
@IndexedEmbedded(depth = 1)
private Club playersClub;
这是我的问题,当我想到这个应用时,有一个想法:当一个俱乐部有前任。 20名玩家和用户将删除所有俱乐部应该仍然在应用程序中,但当用户想要删除俱乐部时 - 那么该俱乐部中的所有玩家也应该被删除(或者用户将看到警报 - 有xx玩家 - 你想要删除它们吗。) 我应该在Club中使用ManyToOne / OneToMany或Embedded Player吗?
答案 0 :(得分:0)
当您建模时,您会想到实体:播放器是一个强大的&#34;实体(玩家可以在没有俱乐部的情况下存在),因此您应该使用ManyToOne/OneToMany
,因为它代表您的模型。在您的业务逻辑中,您可以决定在删除俱乐部时要删除玩家的天气,或者让玩家减少俱乐部。以这种方式建模还可以让您轻松更改删除逻辑。