JPA - 通用主查找表映射

时间:2013-04-26 21:26:34

标签: jpa master lookup-tables

我正在尝试映射通用查找表。查找表在某种意义上是通用的,即不是具有用于特定查找的多个主表,而是将所有代码托管在具有微分器列的单个表中(即,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'。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您可以将它们映射为@ManyToOne,并将代码用作外键。

相关问题