让我直接回答我的问题,如果实体被删除,使用@OnDelete
这里将删除这个实体和任何其他实体?我只是无法从Hibernate 的注释参考中理解一件事。所以我需要你的帮助来确认我理解正确。InventoryPreference
Inventory
public class InventoryPreference {
...
@ManyToOne
@OnDelete(action = OnDeleteAction.CASCADE)
@JoinColumn(name = "inventory_id", nullable = false)
public Inventory getInventory() {
return inventory;
}
}
如果实体被删除,我是否也Inventory
需要在实体中使用CascadeType.ALL
来InventoryPreference
删除所有 s Inventory
?
public class Inventory {
...
@OneToMany(mappedBy = "inventory", cascade = CascadeType.ALL)
public Set<InventoryPreference> getPreferenceItems() {
return preferenceItems;
}
}
如果第一个问题是真的,那么我看不出CascadeType.ALL
. 如果不是,那么这些中的每一个都做了什么以及我需要指定哪些注释和配置才能在InventoryPreference
删除时Inventory
删除 s?Inventory
哦,如果被删除,我不希望InventoryPreference
被删除。对不起,如果它太明显了。