java - 如何在 JPA/Hibernate 映射中对以下模型进行建模

标签 java hibernate jpa

如何在 JPA/Hibernate 映射中对以下模型进行建模

<小时/>

表 SME_ANCHOR 的 DDL

  CREATE TABLE "IRIS"."SME_ANCHOR" 
   (    "NAME" VARCHAR2(250 CHAR), 
    "REPORT_PKID" VARCHAR2(32 CHAR), 
    "PKID" VARCHAR2(32 CHAR), 
    "INDUSTRY_CODE" VARCHAR2(250 CHAR), 
    "ACTIVE_FLAG" VARCHAR2(50 CHAR), 
    "PORTFOLIO_PKID" VARCHAR2(32 CHAR), 
    "POSTAL_CODE" VARCHAR2(250 CHAR), 
    "CITY" VARCHAR2(250 CHAR)
   ) 
ALTER TABLE "IRIS"."SME_ANCHOR" ADD CONSTRAINT "SAR_PK" PRIMARY KEY ("PKID", "ACTIVE_FLAG")
<小时/>

表 LOAN_SME 的 DDL

  CREATE TABLE "IRIS"."LOAN_SME" 
   (    "SME_ANCHOR_PKID" VARCHAR2(32 CHAR), 
    "LOAN_ANCHOR_PKID" VARCHAR2(32 CHAR), 
    "ACTIVE_FLAG" VARCHAR2(50 CHAR)
   ) 
ALTER TABLE "IRIS"."LOAN_SME" ADD CONSTRAINT "PK_LOAN_SME" PRIMARY KEY ("SME_ANCHOR_PKID", "ACTIVE_FLAG", "LOAN_ANCHOR_PKID")
<小时/>

表 LOAN_ANCHOR 的 DDL

  CREATE TABLE "IRIS"."LOAN_ANCHOR" 
   (    "LOAN_ID_STRD" VARCHAR2(240 CHAR), 
    "PORTFOLIO_PKID" VARCHAR2(32 CHAR), 
    "REPORT_PKID" VARCHAR2(32 CHAR), 
    "STATUS" VARCHAR2(250 CHAR), 
    "CURRENCY" VARCHAR2(250 CHAR), 
    "PURPOSE" VARCHAR2(253 CHAR), 
    "PKID" VARCHAR2(32 CHAR), 
    "ACTIVE_FLAG" VARCHAR2(50 CHAR), 
   )
ALTER TABLE "IRIS"."LOAN_ANCHOR" ADD CONSTRAINT "LAR_PK" PRIMARY KEY ("PKID", "ACTIVE_FLAG")

这里的困难在于对具有由 2 个元素组成的键和由 3 个元素组成的外键的实体进行建模。 我该如何解决这个问题。 我正在尝试建立 @ManyToMany 关联,但没有成功。 任何帮助将不胜感激。

最佳答案

尝试使用关系表进行多对多关系。像这样的事情..我没有在你的案例中尝试过,但它在类似的案例中对我有用。

   <many-to-many attribute-type="java.util.Set" fetch="EAGER" name="forwarderInstitutions" target-entity="com.temp.LoanAnchor">
        <join-table name="LOAN_SME">
          <inverse-join-column name="LOAN_ANCHOR_PKID" referenced-column-name="PKID"/>
          <join-column name="SME_ANCHOR_PKID" referenced-column-name="PKID"/>
          <join-column name="ACTIVE_FLAG" referenced-column-name="ACTIVE_FLAG"/>
        </join-table>
      </many-to-many>
<小时/>

关于java - 如何在 JPA/Hibernate 映射中对以下模型进行建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32228701/

相关文章:

java - 表示字符串模式的数据结构

java - hibernate中过滤器和标准之间的区别

java - Hibernate/JPA 将 native 查询的结果映射到持有实体的非实体

java - 如何锁定表...做事...使用 Spring Boot 解锁表?

java - 在 JPA 中声明一个没有类的持久单元

java - 为什么有线程安全收集的要求?

java - 在java中将十进制转换为二进制时遇到反转顺序问题

java - JSONObject ["name"] 未找到

java - org.hibernate.hql.internal.ast.QuerySyntaxException : unexpected token: >= near line 1

java - JPA删除不执行