[英]Join @ManyToOne hibernate using composite Key
我有這張桌子
我還有另一個表,它僅對M_CODE類型使用CODE
所以這映射到這兩個類
@Entity
@Table(name = "PIS_DOMAIN_DETAIL")
public class Domain implements Serializable{
@Id
DomainId id;
@Column(name = "CODE" , insertable = false, updatable = false)
private Integer code;
@Column(name = "COM_NO")
private Integer comNo;
@Column(name = "DESC_A")
private String descA;
@Column(name = "DESC_L")
private String descL;
@Column(name = "TIMESTAMP")
private Date timestamp;
@Column(name = "USER_ID")
private Integer userId;
這是可嵌入的
@Embeddable
public class DomainId implements Serializable{
@Column(name = "M_CODE")
private Integer mCode;
@Column(name = "CODE")
private Integer code;}
所以在僅使用WF_STATUS列中的代碼的其他表中,我創建了這個
// this is select id.code from Domain where id.mCode=35
@Column(name = "WF_STATUS") //that recievce CODE from domain entity
private Integer wfStatus;
@ManyToOne
@JoinColumn(name = "WF_STATUS", referencedColumnName = "CODE",
insertable = false, updatable = false )
@Where(clause=" id.mCode = 35 ")
Domain status;
但這出了這個錯誤
找到了多個具有給定標識符的行:com.project.entities.Domain@50bc3219,對於類:com.project.entities.Domain
我如何編輯我的地圖以接受這種情況..在此先感謝...
您有一個重復的列,您應該確定code
列是否作為復合鍵的一部分出現在DomainId
中(僅在Domain類中)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.