@Entity 不同数据库上表之间的关系

2023-12-25

我是 Java Enterprise 和 JPA 的新手(使用 Netbeans 的 EclipseLink JPA 2.0)。 我试图实现不同项目和包中不同 @Entity 类之间的链接,但没有成功。

数据库 D1 具有表 T1 和引用数据库 D2 上的表 T2 的同义词 T2。

所以我创建了 2 个项目(Jars):

D1-jpa 包含 @Entity package1.T1.class 和 persistence.xml (也映射 T2)

D2-jpa包含@Entity package1.T2.class和persistence.xml

我需要创建一个从 T1 到 T2 的 @OneToOne 关系,以便 T1 有

@一对一

公共 T2 t2;

问题是当我尝试执行简单的 JPQL 查询时:

从 T1 中选择 t

翻译后的查询类似于

从 T1 t 中选择 t.field1、t.field2、T2_t2; --“T2_t2”??

当我期待某件事时 从 T1 t1、T2 t2 中选择 t1.field1、t1.field2、t2.field1

WHERE(连接条件)

您解决问题的方法是什么?如果 D1 上的同义词与 D2 上的真实表具有不同的名称(同义词 TT2 引用 D2 上的 T2 ...)怎么办?

顾及一切。

F.


纯 JPA 中的 @OneToOne 仅当目标是此持久性单元内的实体时才有效。由于您没有收到异常,因此它的工作方式就好像 D1 持久性单元类加载器可以找到并处理两者一样。映射将 T1->T2 外键字段默认为“T2_t2”,可能是因为您的 T2 实体将 t2 字段或属性标记为其 ID。如果您希望将不同的数据库列用作外键,则需要指定关系上的联接列。

我不清楚你的目的,因为 T1 必须能够导入 T2,所以它们不是完全独立的 - 这些表也应该位于同一个数据库中,以便它们之间有 1:1 的关系。但是,您可以将多个持久性单元组合在一起,并将它们与此处描述的 EclipseLink 中的复合持久性单元功能一起使用http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Composite_Persistence_Units http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Composite_Persistence_Units

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

@Entity 不同数据库上表之间的关系 的相关文章

  • 使用 JPA 保存 Map

    在类中保留以下映射的最佳方法是什么 Entity class MyClass ManyToMany cascade CascadeType ALL Map
  • 在 hibernate JPA 的 getReference() 之后,如果不使用 setter 发出 select 则无法更新

    我有以下方法 Transactional public void savethis EntityObject t entityManagerTreasury getReference EntityObject class 1 t setAc
  • 如何将一个窗格连接到另一个窗格

    如何将输出连接到paneWithList PaneWithList其上有一个监听器JList以便将所选行输出到控制台 我怎样才能将该输出定向到JTextPane关于输出 Could PaneWithList触发一个事件Main拿起 会属性更
  • 如何在 EF4 中获取实体的第一个 EntityKey 名称

    如何获取 Entity Framework 4 实体的第一个 EntityKey 名称 因为我正在构建存储库系统 并且我想通过 Id 获取项目 EF 中的主键是实体的第一个实体键 我正在使用这个代码 public virtual TEnti
  • Fluent NHibernate 一对一映射

    我很难利用 Fluent NHibernate 的 HasOne 映射 基本上 A 类在 B 类中可以有匹配的 只有一条或没有 记录 请帮助定义关系的 AMap 和 BMap 类 谢谢 public class A public virtu
  • 枚举字段的自定义排序顺序

    是否可以将 JPA 中的字母排序更改为自定义排序 我在列中有这些数据division BRONZE SILVER GOLD DIAMOND 我已将其映射到实体字段 public enum Division BRONZE SILVER GOL
  • 将实体添加到核心数据

    我们有一个使用核心数据的应用程序 在下一个版本中 我想向现有实体添加一个新实体 只需添加新的然后从软件中填充它就可以了吗 还是有什么我必须考虑的事情 迁移有几种类型 最简单的是使用推断映射模型的轻量级迁移 这意味着您只需告诉它进行迁移 软件
  • Spring data Jpa实体不受管理调用刷新时出现异常

    我有一个数据库代码 jar 我在不同的应用程序中使用它来访问数据库 我在用spring data jpa 我需要调用刷新来检查来自其他应用程序的数据库行的更改 这里我如何实现它 我的StudentRepository界面 public in
  • 复杂的 Activiti + JPA 查询

    我们正在尝试在一个新项目中使用Activiti 我创建了一个设置 它通过 JPA 使用 Hibernate 来持久保存流程中涉及的实体 并且 JPA 与 Activiti 互连 因此我们可以将这些实体用作 JPA 变量 看 Activiti
  • XDocument.Save() 删除我的 实体

    我编写了一个工具来使用 C 和 Linq to XML 修复一些 XML 文件 即插入一些缺失的属性 值 该工具将现有 XML 文件加载到 XDocument 对象中 然后 它向下解析节点以插入丢失的数据 之后 它调用 XDocument
  • @PreUpdate 不适用于 Spring Data JPA

    我有一个实体 Entity EntityListeners MyEntityListener class class MyEntity 还有听者 class MyEntityListener PrePersist PreUpdate pub
  • Hibernate 抛出奇怪的错误:类未映射

    这是错误 org hibernate hql ast QuerySyntaxException Payment is not mapped select p from Payment p 我不明白为什么会抛出这个错误 应该映射该类 正如我将
  • netbeans - 调试器退出,代码为 0xc0000135

    我需要在 netbeans 中安装调试器 我已经在 mingw bin 目录中安装了 gdbmingw get exe install gdb 我已经添加了该行C MinGW bin gdb exe 但是 当我运行调试器时 它会给出以下消息
  • ManyToOne 关系上的 Hibernate @Where 注释

    我最近开始重构我的项目 因为我必须在一些表中添加额外的列 额外的列是一个枚举 待定或活动 由于这一更改 我现在需要重构所有查询 以便仅在状态为 活动 时检索行 经过一些研究 我发现我们可以使用 Where 注释来注释实体 当我在简单的列上使
  • BigDecimal 的 JPA @Size 注释

    我该如何使用 SizeMySQL 的注释DECIMAL x y 列 我在用着BigDecimal 但是当我尝试包括 Size max它不起作用 这是我的代码 Size max 7 2 Column name weight private B
  • 可空日期列合并问题

    我在 Geronimo 应用程序服务器上使用 JPA 和下面的 openjpa 实现 我也在使用MySQL数据库 我在更新具有可为空 Date 属性的对象时遇到问题 当我尝试合并 Date 属性设置为 null 的实体时 不会生成 sql
  • Netbeans 8.1 Gnome 3 GTK+ UI 字体和选项卡高度

    我刚刚在运行 GNOME 3 桌面的 Ubuntu 16 04 上安装了 NetBeans 8 1 如果可能的话 我想继续使用 IDE 的 GTK 外观和感觉 但 UI 上的字体 尤其是选项卡中的字体 太小且重叠 我尝试添加 fontsiz
  • IF EXISTS 在德比中未被识别

    DROP TABLE IF EXISTS Pose 结果出现错误 Error code 1 SQL state 42X01 Syntax error Encountered EXISTS at line 1 column 15 我使用默认的
  • JPA 和 PostqreSQL:长字符串持久化

    谁能告诉我如何使用 JPA 保存长文本 我使用 PostgreSQL 这是我在类中定义很长字符串的方法 Lob private String body 然而 这会产生一个类型的字段字符变化 255 在数据库中 此外 我尝试使用 Column
  • spring data jpa复合键重复键记录插入导致更新

    我有一个具有复合键的实体 我试图通过使用 spring data jpa 存储库到 mysql 数据库来持久化它 如下所示 Embeddable public class MobileVerificationKey implements S

随机推荐

  • 指令操作数必须具有相同大小错误

    我已经在数据段中定义了数组 例如 myArray byte 01 03 02 05在代码中我有一行mov eax BYTE PTR myArray ecx 汇编器在这里抛出构建错误指令操作数必须具有相同的大小这可能是什么原因 我该如何解决
  • 在 Cocoa 中运行 Socket 服务器

    我正在尝试编写一个程序 该程序使用套接字通过网络与其自身的其他实例连接 由于最终我也想编写一个 Windows 版本 因此我目前在 OS X 端使用 BSD 套接字 以便我可以确保它将与 最终的 Windows 版本兼容 到目前为止 我能够
  • 双击 vs java -jar MyJar.jar

    我有一个 jar文件 当我通过命令提示符运行它时java jar MyJar jar 效果很好 但是双击它却不会 双击启动程序正确 但内部有些东西不起作用 为了尝试弄清楚我自己出了什么问题 双击可运行的程序有什么区别 jar与从命令行运行它
  • xCode 4 挂起...该怎么办?

    xCode 4 开始挂在 svn 控制下的任何项目上 我使用一个远程存储库 该存储库可以通过命令行访问并且工作得很好 我能找到的唯一解决办法是杀死本地 svn 并再次签出整个项目 这似乎工作了一段时间 但随后又出现了同样的问题 xCode
  • VueJS:在渲染新组件之前完成动态组件转换

    我有一些组件可以使用 VueJs 的动态组件选项进行交换 我在动态组件上设置了转换 我的问题如下 当前 如果更改当前视图 或组件 过渡效果将启动 离开过渡 一旦过渡效果开始 下一个视图 组件就会开始其自己的过渡 本质上 两种转变同时发生 我
  • 如何使用 vbscript 将一张纸中的行复制到另一张纸

    假设我的 Excel 中有 Sheet 1 现在我也有 2500 行 其中包含从 A 到 BO 的列的数据 现在我希望将数据从这些工作表复制到同一 Excel 文件的另一张工作表中 2500 行 但不是整个列 而是我只需要从 A 到 AA
  • gnuplot:有没有办法在空间上绘制垂直线?

    我正在尝试绘制变量的几条垂直线 例如速度 m s 相对于距离 m 的x轴和高度 m 的y轴 每个速度分布都是在不同位置测量的高度的函数 因此 我们的目的是观察这些轮廓在空间上如何变化 我曾考虑通过将垂直轮廓移动与测量每个轮廓的位置相对应的
  • 提供“工具提示之旅”的最佳方式[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何从 Scala 源代码创建 jar?

    如何从 Scala 源代码创建 jar 我想在我的 Clojure 项目中使用其中的一些代码 有没有比执行批处理文件更简单的方法这个问题 https stackoverflow com questions 809138 creating a
  • 有没有免费的工具可以将超过 65000 个寄存器的文件从 DBF 格式转换为 CSV?

    我需要将一个非常大的文件从 DBF 格式转换为 CSV 格式 我尝试过 Microsoft Excel 来完成这项工作 但问题是当我打开并导出文件时 我看不到超过 65500 个寄存器 Microsoft Access 也无法打开该文件 我
  • R-将数据帧分割成相等的部分并组成一个列表[重复]

    这个问题在这里已经有答案了 让我有这样一个数据框 df col1 col2 col3 col4 col5 col6 12 15 21 19 45 43 37 77 90 4 0 51 Namely df lt data frame col1
  • Python base64 编码列表

    在 Python 中编码对我来说是新的 我正在尝试理解它 如果已经询问并回答了这个问题 我们深表歉意 我正在尝试对 Python 列表进行编码并解码 当我尝试直接对列表进行编码时 遇到如下错误 gt gt gt my list 1 2 3
  • 用于集成测试的 Spring Boot 身份验证

    我正在尝试为我的控制器运行集成测试 但如果我不进行身份验证 我就会遇到问题 这是我的控制器 RunWith SpringRunner class SpringBootTest webEnvironment SpringBootTest We
  • SWT ExpandListener 在 Linux 上发生崩溃之前执行

    这是一个显示问题的简单可执行代码片段 使用 ExpandBar 时 期望的结果是在折叠或展开时调整窗口大小 它在 Mac 上可以正常工作 但在 Linux 上却不能 它看起来像扩展监听器在折叠 展开实际发生之前调用 因此pack 调整大小不
  • 当我更新时,Recyclerview 位置更改为第一个位置

    我在用onLoadMoreListener当我滚动时RecyclerView 它将更新RecyclerView滚动到底部时的数据 更新后Recyclerview数据 这Recyclerview返回顶部 理想情况下 我想保留在Recycler
  • 类型不匹配:无法从 String 转换为 R.string

    我是新人 所以请原谅我的原始问题 我真的不明白 我只是在做教程时在我的主要活动中创建这个数组 但出现错误 package com TaskReminder import android R string import android app
  • 使用 Haxe 将参数传递给延迟函数

    你知道是否有一种简单的方法可以将一些参数传递给通过调用的函数 haxe Timer delay func delay 我所说的 简单 是指无需创建任何自定义计时器 您可以使用bind https haxe org manual lf fun
  • 本地主机 - 您的浏览器已阻止或不支持 Cookie [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我刚刚在我的本地主机上设置了这个多站点 WordPress 它由一个域 local example com 和 2 个子域 local
  • 引用第 3 方程序集的最佳实践

    我一直想知道引用第 3 方程序集时的最佳实践是什么 前段时间我问了一个问题 依赖关系和引用 我到底应该引用什么 https stackoverflow com questions 268214 dependencies and refere
  • @Entity 不同数据库上表之间的关系

    我是 Java Enterprise 和 JPA 的新手 使用 Netbeans 的 EclipseLink JPA 2 0 我试图实现不同项目和包中不同 Entity 类之间的链接 但没有成功 数据库 D1 具有表 T1 和引用数据库 D