【发布时间】:2017-04-17 19:14:35
【问题描述】:
我在 Person 和 Group 表之间有多对多的关系,连接表是 PersonGroup。当我保存/删除 Person 时,它会从 Person, PersonGroup and Group 表中保存和删除。
我只想从“Person”和“PersonGroup”表中删除/保存并离开Group table untouched.
在查询“Person”时,我应该在 Person 实体中获得“Group”列表。
所以基本上“组”是一个参考表。它只能从 Group 表中读取,不能删除/更新。
我怎样才能做到这一点?
@Entity
@Table(name="Person")
public class Person implements Serializable {
@Id
private long personId;
@ManyToMany(cascade=CascadeType.ALL)
@JoinTable(name="PersonGroup", joinColumns=@JoinColumn(name="person_id"),
inverseJoinColumns=@JoinColumn(name="group_id"))
private List<Group> groups;
}
@Entity
@Table(name="Group")
public class Group implements Serializable {
@Id
private long groupId;
@ManyToMany(mappedBy="groups")
private List<Person> persons;
}
【问题讨论】:
标签: java database hibernate jpa many-to-many