0

我正在尝试映射一个通用查找表。从某种意义上说,查找表是通用的,而不是具有用于特定查找的多个主表,所有代码都托管在具有差异列(即 code_type)的单个表中。下面提供了一个示例代码表条目:

代码表
CODE_TYPE 代码说明
LOAN_STATUS CLOS Closed
LOAN_STATUS REG Registered
LOAN_TYPE CONV Conventional
LOAN_TYPE JUM Jumbo
....

现在我的主要实体如下

@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' AND CODE='CLOS'。类似地,如果loanType 字段值为“CONV”,则与该字段关联的相应 CodeData 应该是 CODE_TYPE='LOAN_TYPE' AND CODE='CONV'。

任何帮助将非常感激。

4

1 回答 1

0

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

于 2013-05-07T14:13:28.517 回答