【发布时间】:2013-10-31 08:04:52
【问题描述】:
在@ManyToMany 关系中,用“mappedby”注解的一方不会触发关系持久化是真的吗?例如,
@ManyToMany(mappedBy="joinedTopicGroups")
public List<User> getContainedUsers() {
return containedUsers;
}
@ManyToMany
@JoinTable(name = "UserInTopicGroup", joinColumns = @JoinColumn(name = "userID"), inverseJoinColumns = @JoinColumn(name = "groupID"))
@LazyCollection(LazyCollectionOption.FALSE)
public List<TopicGroup> getJoinedTopicGroups() {
return joinedTopicGroups;
}
如果我将用户添加到“containedUsers”中,该关系是否会保留到表 UserInTopicGroup 中?
【问题讨论】:
-
答案是否定的。但是,如果您声明
CASCADE,则可以通过添加到containedUsers并更新持有它的实体来持久化未持久化的User对象。只有 Ofc 用户表将被更新(如果级联更深入层次结构或子级已经持久化,则与其子级一起更新)
标签: hibernate mapping persistence relationship