当前位置: 首页 > 面试题库 >

JPA不能很好地支持接口。

孟选
2023-03-14
问题内容

我浏览了一些帖子,并且阅读了多个JPA不支持接口的地方。有人可以分享真实项目中的含义吗?这是否意味着我们无法为接口添加注释?


问题答案:

这意味着您不能在接口上进行映射(注释)或查询。您只能查询@Entity类,并且只能将它们放在真实类中,而不能放在接口上。通常这不是问题,接口没有状态,因此在大多数情况下与持久性没有真正关系。您仍然可以在模型中使用接口,只是不能直接映射它们。

如果您有使用接口类型的关系,则只需将targetEntity设置为实现类。如果您有多个实现者,并且不能让他们共享继承,那么您需要变得更有创造力。某些JPA提供程序(例如EclipseLink)支持接口。

参见
http://en.wikibooks.org/wiki/Java_Persistence/Advanced_Topics#Interfaces



 类似资料:
  • 问题内容: 我想在Linux命令行上回显查找的文件名部分。我尝试使用以下内容: 和 以及转义和引用文本各个部分的其他组合。结果是该路径未被剥离: 为什么不? 更新:尽管我在下面有一个可行的解决方案,但我仍然对为什么“基本名称”没有执行应做的事情感兴趣。 问题答案: 您最初尝试的麻烦: 是代码在执行命令之前执行一次。单曲的输出是因为它是文件名的基本名称。因此,由find执行的命令是: 为找到的每个文

  • 什么会导致方法停止工作? 最后一页总是与第一页相反的顺序,怎么会呢?

  • 我正在创建一个用户界面,允许用户通过拖放界面创建数据库表(及其字段和关系)。 这是我创建的jsFiddle,尽管它看起来有很多事情要做,但实际上它只是演示问题所需的最低限度。以下是我的要求,jsPlumb很好地单独处理了这些要求,但是当我试图把它们放在一起时,我会遇到问题。特别是,它将#2和#3结合在一起是一个问题。 表格可以在画布上拖动(使用jsPlumb.draggable()) 表中的字段可

  • 我有一个基本的 VPC,其中包含两个运行 Apache 的 Linux EC2 实例,它们位于经典 ELB 后面。 我想从web应用程序中使用DynamoDB,这要求EC2实例具有出站互联网访问,因为DynamoDBendpoint无法通过后端获得。 我正在使用 ELB 来避免将公有 IP 附加到 EC2 实例,因此我宁愿不附加它们,以便可以访问 DynamoDB。 在这一点上,我被卡住了。 我设

  • 编辑:因为人们仍然从google登陆这里,你必须在OpenGL环境中调用每一个OpenGL方法。因此,在使用GL做任何事情之前,请确保您在一个上下文中。 我试图用lwjgl在我的屏幕上呈现一个简单的文本,但是每次都失败了!当我启动游戏时,它崩溃了,并向我抛出错误: 我需要使用现代openGL还是什么?我真的需要帮助