相关疑难解决方法(0)

当Hibernate没有更改时,阻止Hibernate更新集合

我有两个实体bean定义如下(不相关的东西删除):

@Entity
@Table(...)
public class MasterItem implements java.io.Serializable {

  private Set<CriticalItems> criticalItemses = new HashSet<CriticalItems>(0);

  @OneToMany(fetch = FetchType.EAGER, mappedBy = "masterItem", orphanRemoval = true,
            cascade = {javax.persistence.CascadeType.DETACH})
    @Cascade({CascadeType.SAVE_UPDATE, CascadeType.DELETE})
    public Set<CriticalItems> getCriticalItemses() {
        return this.criticalItemses;
    }
}
Run Code Online (Sandbox Code Playgroud)

CriticalItems定义如下:

@Entity
@Table(...)
public class CriticalItems implements java.io.Serializable {

    private MasterItem masterItem;

    @ManyToOne(fetch = FetchType.LAZY, optional = false,
            cascade = {javax.persistence.CascadeType.DETACH})
    @Cascade({CascadeType.SAVE_UPDATE})
    @JoinColumn(name = "mi_item_id", nullable = false)
    public MasterItem getMasterItem() {
        return this.masterItem;
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的DAO代码中 - 我有这些方法:

public MasterItem load(int id) …
Run Code Online (Sandbox Code Playgroud)

collections hibernate persist

10
推荐指数
1
解决办法
2万
查看次数

标签 统计

collections ×1

hibernate ×1

persist ×1