Jakarta ee jpa websphere实体id不存在错误

Jakarta ee jpa websphere实体id不存在错误,jakarta-ee,jpa-2.0,javabeans,wid,Jakarta Ee,Jpa 2.0,Javabeans,Wid,晚上好。当我尝试使用数据库连接创建jpa实体时,我遇到了一些异常。关于身份的一些东西不存在。我怀疑这与某些表没有主键这一事实有关。因为当我遍历每个实体并给它一个主键时,错误就会清除。如何在没有主键的表上创建实体?顺便说一句,我使用的是websphere integration developer(wid)。所有实体都有一个Id,这就是它们的工作方式,或者更准确地说,是规范规定的工作方式。如果数据库中有要映射到实体的表,而这些表没有主键,则有几个选项可供选择 将生成的Id(由JPA或DB管理)添

晚上好。当我尝试使用数据库连接创建jpa实体时,我遇到了一些异常。关于身份的一些东西不存在。我怀疑这与某些表没有主键这一事实有关。因为当我遍历每个实体并给它一个主键时,错误就会清除。如何在没有主键的表上创建实体?顺便说一句,我使用的是websphere integration developer(wid)。

所有实体都有一个Id,这就是它们的工作方式,或者更准确地说,是规范规定的工作方式。如果数据库中有要映射到实体的表,而这些表没有主键,则有几个选项可供选择

  • 将生成的Id(由JPA或DB管理)添加到表中-如果您有此自由,建议这样做
  • 使用表中的两个现有列作为实体Id(选择确保Id唯一所需的最少数字)
  • 使用所有列,即使理论上它们的组合不是唯一的(这会弄乱表/db,所以即使在java层中也要小心,不要让这种情况发生)
  • 。。。可能还有更多我现在想不到的选择
通过搜索JPA和CompositeKey,应该很容易找到关于如何执行备选方案2和3的信息


祝你好运,我没想到。我最终可能会那样做。谢谢。我可以生成嵌入类型吗?而不是实体还是实体的Id?