当前位置: 首页 > 知识库问答 >
问题:

Hibernate主键和id中的同一列

左丘涵畅
2023-03-14

我有一个带有多个主键的表,所以我必须创建可嵌入类。该键中的一列是另一个表的外键。如何为其创建JPA注释?

public class ControlPlanLineEmbeddable implements Serializable{

    @Column(name = "[Control Plan No_]")
    String controlPlanNo;

    @Column(name ="[Version]")
    String version;

    @Column(name ="[Line No_]")
    int lineNo;   

    @ManyToOne
    @JoinColumn(name="Control Plan No_")
    ControlPlanSetup xxx;
....

所以我只有3列,我试图创建4个注释。列是主键的一部分,也是不同表中的外键。我必须创建多通注释,但我收到:

外键引用POJO。来自POJO的ControlPlanSetup。ControlPlanLine的列数错误。应该是4

共有1个答案

荆弘伟
2023-03-14

上次我还需要使我的PK也成为另一个实体的FK。有人来帮忙

@MapsId

来自(javax.persistence.MapsId;)的注释。我相信用它可以解决你的问题。

 类似资料:
  • 我的数据库是: 我们可以在Table2中为Table1中的1设置多行。 我的TABLE1实体是: 我的Table1Id类是: 我的TABLE2实体是: 我的Table2Id类是: 当我尝试启动我的tomcat时,我有以下错误: 我尝试使用引用列,主键连接列和许多其他东西,但是通过在互联网上阅读它,它可以解决数据库建模问题。我认为问题是主键和外键在2个表中具有相同的名称,但我可能是错的......我

  • 我有2个实体类:Student是父类,Address是子类,具有一对一映射: student_id int(pk),roll_no int(pk),name varchar student_id(pk,fk),国家/地区varchar address实体中的student_id既是主键也是外键 学生实体类: 异常为-org.hibernate.AnnotationException:@mapsid

  • 问题内容: 我必须使用hibernate模式,并且不太确定如何解决此问题,我有2个具有1..n关系的表,如下所示: 我该如何使用Hibernate进行管理??? 我不知道如何管理第二张表的主键… 问题答案: 在Hibernate参考文档中有一个与您的案例完全相似的示例。在此示例之前,您将找到解释。这是与您的问题匹配的示例(用户是表A,客户是表B): 注意:如果您拥有这两个表的代理标识符,则要简单得

  • 我有两个不同的表,每个表有20k个条目,我错误地在同一个表中将summaryId作为主键和外键,但现在我想删除主键约束,它也是自动增量的。当我尝试drop primary key语法时,它返回一个错误: #1025-重命名'.\tg#sql-a38_7f'到'.\tg\rest_web_availability_summary_pm'时出错(errno: 150) 我尝试了以下查询。 如果有人有任

  • 我在表中添加了一个自定义主键,现在Laravel根本找不到结果。出现错误,无法找到该页。 ####################################################################################### 没有模型[App\usersinformation]的查询结果。 控制器 -------------------- 模型-------

  • 我正在努力解决hibernate映射问题,即在订单表的主键和带有一些额外列的产品购物车的复合键之间映射一对多关系 产品购物车表具有组合键购物车ID和产品ID 我试着跟踪但没有成功 有人能帮我实现这一点吗?下面是错误消息 原因:组织。冬眠AnnotationException:非法尝试使用mappedBy关联pcoPK定义@JoinColumn。组织pk。冬眠cfg公司。Ejb3JoinColumn