我有一个用户和一个特权类。用户可以拥有许多权限。到目前为止一切都很好。
我有一些与用户类相似的关系。但是我不想让用户混淆所有这些东西。
所以我认为将用户和特权之间的关系明确化是一个好主意。 我希望得到一个UserPrivilges类,它与用户具有一对一的关系,并且与特权有一对多的关系。
如果可能的话,可以获得一些反馈。
THX 每
答案 0 :(得分:1)
如果我理解正确,你只想在一个单独的类中组合几个OneToMany关联,并在User中有一个这个类的实例。但从语义上讲,这些关联是用户和其他实体之间的关联。
如果是这样,您应该按原样保留数据库scheam,只需使用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;
}
有关详细信息,请参阅the documentation。