首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JPA 2复合映射

JPA 2复合映射
EN

Stack Overflow用户
提问于 2012-12-07 14:19:41
回答 1查看 212关注 0票数 0

我有三个实体-- PersonTaskNote --它们的行为应该如下:

  • 一个人可以有多个任务
  • 一个任务可以分配给多个人。
  • 每个人都可以为一项任务附加多个笔记。

在此基础上,我有以下表格:

代码语言:javascript
复制
Person     Task    Person_Task    Note           Person_Task_Note
-------    ----    -----------    -----------    ----------------
id         id      id             id             id
name       name    person_id      description    person_task_id
                   task_id                       note_id

与折叠式关系:

  • PersonTask之间使用Person_Task作为连接表的多对多。
  • Person_TaskNote之间使用Person_Task_Note作为连接表的一对多

现在,我试图使用JPA2和Hibernate来映射这个结构。我的目标是在代码中只有三个基本实体,具有以下选项:

  • 获取一个人的所有任务(person.getTasks())
  • 获取一个人的任务的所有笔记(task.getNotes())

我知道我可以将每个表映射到一个类,然后使用一个胖的JPA标准查询来检索所需的信息。

但是,我希望避免(如果拥有)为联接表创建类。

如果我使用Person映射Task@ManyToMany之间的关系,我目前不知道如何进一步检索Note条目

是否只通过使用JPA注释而不为联接表编写类来进行这种映射呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-07 14:23:27

不,这不可能。您必须映射所有表,并将Person和Task之间的ManyToMany转换为两个OneToMany关联。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13764898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档