JPA Find方法返回错误关联的对象

时间:2015-09-15 12:30:29

标签: java hibernate jpa

我持有一个包含对象列表B的对象列表。

我持有2个对象A,两个对象都有3个对象的列表B.两个列表中的3个对象相同(同一参考)。

在数据库中,关联似乎很好:

line-height

当检索对象列表A时,不是使用我的2个对象A的大小为2的列表,而是具有3个对象B的列表,而是获得6个对象的列表A所有具有这3个对象的列表B. 在数据库中,似乎映射是正确完成的,但在检索我的对象时却没有。

什么做错了?

下面是A对象的映射文件:

Table A_2_B
ID_B        | ID_A
--------------------------
B1          | A1
B2          | A1
B3          | A1
B1          | A2
B2          | A2
B3          | A2

更新,实体与A之间的映射:

<entity name="ProductDefinition" class="mapp3.model.A" access="FIELD">

    <table name="T_A"/>

    <attributes>

      <id name="uniqueIdentifier">
        <column name="UUID" length="100"/>
      </id>

      <basic name="type">
        <column name="TYPE" length="100" />
      </basic>

      <many-to-many name="B" target-entity="mapp3.model.B" fetch="EAGER" access="FIELD">

        <join-table name="A_2_B"/>

        <cascade>
          <cascade-persist/>
          <cascade-merge/>
          <cascade-refresh/>
        </cascade>

      </many-to-many>

    </attributes>

0 个答案:

没有答案