hibernate聚合实体

hibernate聚合实体,hibernate,Hibernate,我有三张桌子: 用户-包含用户的登录名和密码 Person-包含姓名和姓氏 角色-指定角色 用户与个人一对一绑定。 与角色多对多绑定的用户 我要创建聚合实体,包含所有信息,例如: public class AggregatedUser { private User user; private Person person; private List<Role> roles; } 公共类聚合器{ 私人用户; 私人; 私有列表角色; } 我有以下问题 这是处理

我有三张桌子:

  • 用户-包含用户的登录名和密码
  • Person-包含姓名和姓氏
  • 角色-指定角色
  • 用户与个人一对一绑定。 与角色多对多绑定的用户

    我要创建聚合实体,包含所有信息,例如:

    public class AggregatedUser {
    
        private User user;
        private Person person;
        private List<Role> roles;
    }
    
    公共类聚合器{
    私人用户;
    私人;
    私有列表角色;
    }
    
    我有以下问题

  • 这是处理Hibernate的正确方法吗
  • 我如何实现它

  • 实体表示数据库表中的一行。所以你的类不是一个实体。你说这个人和用户有一对一的关系,而用户有一个多对多的关系,所以这个人已经是一个“聚合实体”。从一个人那里,您可以获得有关其链接到的用户的信息,以及有关其链接到的用户的角色的信息。这就是关联的意义所在。@JBNizet在我的例子中,我希望Person类没有User as字段。我还希望用户类中没有角色列表。所以人不是“聚合实体”。什么是AggregatedUser而不是“聚合实体”的最佳术语“?好吧,通过添加必要的关联,使之成为一个。@JBNizet我只为表之间的关联创建了示例。AggregatedUses不是表。我如何将它与其他表关联?正如我所说:忘记这个AggregatedUser类吧。在用户中添加一对一关联和多对多关联。然后从数据库中获取一个人,您就可以访问他的用户和角色。