0

私は Hibernate で多対多の関係を持っています。1 つの objectA を 2 つの objectsB に関連付けると、objectA.getObjectB() は 2 つの要素 (データベースを含む) を正常に返しますが、objectB.getObjectA() は objectA を返しません。機能する新しいセッションの後でのみ。

@Entity
public class ObjectA implements java.io.Serializable {

    private List<ObjectB> objectsB;

    ...

    @ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
    @JoinTable(name = "db_objectA_objectB", joinColumns = {
        @JoinColumn(name = "idObjectA", updatable = false)}, inverseJoinColumns = {
        @JoinColumn(name = "idObjectB", updatable = false)})
    public List<ObjectB> getObjectsB() {
        return objectsB;
    }

    public void setObjectsB(List<ObjectB> objectsB) {
        this.objectsB = objectsB;
    }
}

@Entity
public class ObjectB implements java.io.Serializable {

    private List<ObjectA> objectsA;

    ...

    @ManyToMany(fetch = FetchType.EAGER, mappedBy = "objectsB", cascade = CascadeType.ALL)
    public List<ObjectA> getObjectsA() {
        return objectsA;
    }

    public void setObjectsA(List<ObjectA> objectsA) {
        this.objectsA= objectsA;
    }
}
4

1 に答える 1