【发布时间】:2017-10-31 02:56:46
【问题描述】:
我有一种情况,用户可以从列表中删除子实体:
@Entity
public class StandaredPriceTag {
.
.
.
@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER,mappedBy="standaredPriceTag")
List<StandaredPrice> standaredPriceList = new ArrayList<>();
和
@Entity
public class StandaredPrice {
.
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "standard_price_tag_id")
private StandaredPriceTag standaredPriceTag;
.
据我了解,只要将StandaredPriceTag 附加到实体管理器,任何更新都会反映到数据库中。现在,当我从List<StandaredPrice> standaredPriceList 中删除一个项目,然后将StandaredPriceTag 重新附加为entityManager.merge(standaredPriceTag); 时,子实体仍然存在。
【问题讨论】:
标签: java hibernate jpa orm persistence