Java 如何处理没有';不需要@id注释
我在模式中有一些类,其中一些是没有任何ID的表,因为它们用作引用/值表,如国家、性别、公民身份等。但是当我尝试运行应用程序时,应用服务器glassfish不会部署它,因为它要求在我的实体上有一个@Id属性的字段,而它通常没有这个属性,因为它主要用作值表Java 如何处理没有';不需要@id注释,java,jpa,persistence,Java,Jpa,Persistence,我在模式中有一些类,其中一些是没有任何ID的表,因为它们用作引用/值表,如国家、性别、公民身份等。但是当我尝试运行应用程序时,应用服务器glassfish不会部署它,因为它要求在我的实体上有一个@Id属性的字段,而它通常没有这个属性,因为它主要用作值表 除了创建id字段,我还能做什么?JPA不做没有标识的实体;JDO是唯一支持该概念的Java持久性规范 对于JPA,一种方法是添加任意id(如果其中一列是唯一的,则可以,否则添加一个新的(虚拟)列来存储“id”@id用于标记主键。通常它是代理主键(
除了创建id字段,我还能做什么?JPA不做没有标识的实体;JDO是唯一支持该概念的Java持久性规范
对于JPA,一种方法是添加任意id(如果其中一列是唯一的,则可以,否则添加一个新的(虚拟)列来存储“id”
@id
用于标记主键。通常它是代理主键(即标识行的任意数字),但也可以是自然主键(即,用于从外部引用该表行的任何列)
在您的情况下,这些引用表当然有主键,您需要用
@Id
注释相应的字段。谢谢,我想我会使用虚拟Id。感谢您的帮助:D!