【问题标题】:Hibernate Association MappingHibernate 关联映射
【发布时间】:2012-12-21 06:43:39
【问题描述】:

我正在使用 Hibernate。

关系详情:

  • 一个用户属于多个社区
  • 一个 FACULTY 可以处理一个 COMMUNITY
  • FACULTY 是用户

所以这里的 FACULTY 是一个弱实体,我需要创建没有任何主键属性的 Faculty.java,例如:

private Integer facultyId;

并且只有字段

User user; Community community;

有没有更好的方法来处理而不是创建在这里多余的facultyId?

【问题讨论】:

标签: java hibernate


【解决方案1】:

你的关系细节让我很困惑:

实际思考,如果一个用户属于很多社区,那么一个社区肯定会有很多用户。你不这么认为吗??你必须重新考虑这个..

仍然...考虑到您定义的关系 只要教师除了社区之外没有分配其他属性。我建议您不要为教师创建单独的表(我认为这不是必需的),您可以在 COMMUNITY TABLE 中添加额外的列作为 COMMUNITY_ROLE 并将角色定义为FACULTY 供所需用户使用。 优势: 由于 USER-COMMUNITY 是一对多的关系,我们将在 COMMUNITY 中有用户,而 COMMUNITY_ROLE 将定义 FACULTY 或 NULL。

我仍然强烈认为 USER-COMMUNITY 将是多对多的,这将推翻我上面基于您在上面提供的关系详细信息的解决方案,我认为这是错误的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-14
    • 2011-05-23
    • 1970-01-01
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多