Java 双向映射正确吗?
有人能告诉我这是否是双向映射的正确方法吗Java 双向映射正确吗?,java,hibernate,Java,Hibernate,有人能告诉我这是否是双向映射的正确方法吗 class User { @OneToMany(cascade=CascadeType.ALL, mappedBy="user") private List<item> items; } class Item { @ManyToOne private User user; } 我是否必须将项目设置为用户,用户也必须将项目设置为用户 泰 是的,您的关系/映射已正确注释。删除项不会删除其关联的用户。删除用户将
class User {
@OneToMany(cascade=CascadeType.ALL, mappedBy="user")
private List<item> items;
}
class Item {
@ManyToOne
private User user;
}
我是否必须将项目设置为用户,用户也必须将项目设置为用户
泰
项
不会删除其关联的用户
。删除用户
将删除与该用户关联的每个项目
用户
级联到项
(反之亦然)时,您可能希望调用持久化(用户)
,而不是持久化(项)
。只要您将项添加到用户
中的列表中,它就会自动保留项
如果不希望删除它们,但希望保存它们,请使用CascadeType.PERSIST或MERGE
User user = new User();
Item item = new Item();
user.getItems().add(item);
item.setUser(user);
persist(item);