我正在尝试映射通用查找表。查找表在某种意义上是通用的,即不是具有用于特定查找的多个主表,而是将所有代码托管在具有微分器列的单个表中(即,code_type)。下面提供了一个示例代码表条目:
代码表
的 CODE_TYPE代码描述
LOAN_STATUS CLOS关闭
LOAN_STATUS REG注册
LOAN_TYPE CONV常规
LOAN_TYPE JUM巨型
....
现在我的主要实体如下
@Entity(name="MORTGAGE")
public class Loan{
@Id
@Column(name="LOAN_SK_SEQ")
protected long loanId;
@Column(name="LOAN_NUM")
protected String loanNumber;
@Column(name="LOAN_STATUS_CD")
protected CodeData loanStatus;
@Column(name="LOAN_TYPE_CD")
protected CodeData loanType;
.....
}
代码表条目已映射为
@Entity(name="CODE")
public class CodeData{
@Id
@Column(name="CODE_TYPE")
protected String codeType;
@Column(name="CODE")
protected String code;
@Column(name="DESCRIPTION")
protected String description;
}
如何映射/加入主实体(LoanData)的loanStatus和loanType字段。它需要根据类型拾取正确的代码/描述。例如,当loanStatus字段值为“CLOS”时,CodeData应对应于CODE_TYPE ='LOAN_STATUS'和CODE ='CLOS'。类似地,如果loanType字段值为“CONV”,则与该字段关联的相应CodeData应为CODE_TYPE ='LOAN_TYPE'和CODE ='CONV'。
非常感谢任何帮助。
答案 0 :(得分:0)
您可以将它们映射为@ManyToOne,并将代码用作外键。