java无法彻底消除_java-无法从@OneToMany集合中删除元素

我有一个实体Entity1,它与Entity2具有一对多的关系,如下所示:

1-实体1:

@Entity

@Table(name = "Entity1", catalog = "mydb")

public class Entity1 implements java.io.Serializable {

@OneToMany(fetch = FetchType.LAZY, mappedBy = "entity1", cascade = javax.persistence.CascadeType.ALL)

@OrderBy("id")

private Set collection = new HashSet(

0);

}

2- Entity2 :(等于和哈希码方法被覆盖)

@Entity

@Table(name = "entity2", catalog = "advertisedb")

public class Entity2 implements java.io.Serializable {

@Id

@GeneratedValue(strategy = GenerationType.IDENTITY)

@Column(name = "pkid", unique = true, nullable = false)

@Basic(fetch = FetchType.EAGER)

private long id;

@ManyToOne(fetch = FetchType.EAGER)

@JoinColumn(name = "fk_entity1", nullable = false)

private Entity1 entity1;

@ManyToOne(fetch = FetchType.EAGER)

@JoinColumn(name = "apid", nullable = false)

private Entity3 entity3;

}

3-这是我从集合中删除实体的方式:

entity1Obj.getEntity2().remove(entity2);

log.debug("size after remove: "+ entity1Obj.getEntity2().size()); // size decreases correctly, so the entity is removed from the collection

entity1Dao.updateEntity1(entity1);

4- DAO方法:

public void updateEntity1(Entity1 entity1) {

getCurrentSession().update(getCurrentSession().merge(entity1));

}

问题:我在控制台中得到的是对应该删除的entity2的选择查询,没有删除查询,也没有删除任何内容.

请告知如何解决此问题.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值