说得对,我正在尝试为 hibernate 关系构建以下逻辑。
资源有许多读取组。
资源有很多写组。
两个组都是Groups类。
到目前为止我做了什么:
ResourcePage.class
public class ResourcePage {
/*
useless code
*/
private Set read;
private Set write;
@OneToMany(cascade = CascadeType.ALL,
fetch = FetchType.EAGER,
targetEntity = Groups.class)
@JoinTable(name = "resourcepage_read_permissions")
public Set getRead() {
return read;
}
@OneToMany(cascade = CascadeType.ALL,
fetch = FetchType.EAGER,
targetEntity = Groups.class)
@JoinTable(name = "resourcepage_write_permissions")
public Set getWrite() {
return write;
}
/*
useless code
*/
}
表格按预期创建。
然而,hibernate正在生成唯一约束到 id of group ,这给了我一个大问题,因为有时两个不同的资源可以是与读取组相同的组。
你们怎么处理它? 如何让休眠不生成这个独特的约束?
非常感谢。
答案 0 :(得分:0)
您需要使用@ManyToMany
代替@OneToMany
。