我有一个用户和一个特权类。用户可以拥有许多特权。到现在为止还挺好。
我与用户类有一些类似的关系。但我不想用所有这些东西把用户弄得乱七八糟。
所以我认为明确用户和特权之间的关系是个好主意。我想获得一个与用户一对一关系和与特权一对多关系的类 UserPrivilges。
如果可能的话,很高兴得到一些反馈。
谢谢每
如果我理解正确,您只想将几个 OneToMany 关联分组到一个单独的类中,并在 User.xml 中有一个此类的实例。但在语义上,这些关联是用户与其他实体之间的关联。
如果是这样,您应该保持数据库架构不变,并简单地使用 User 内的嵌入式对象对您的关联进行分组:
@Embeddable
public class UserPrivileges
@OneToMany
private Set<Privilege> somePrivileges;
@OneToMany
private Set<Privilege> someOtherPrivileges;
@OneToMany
private Set<Privilege> yetOtherPrivileges;
}
@Entity
public class User {
@Embedded
private UserPrivileges privileges;
}
有关更多详细信息,请参阅文档。