我有一个实体类Film
。它有一个作为枚举值的类型列表。我将流派存储在单独的表film_genres
中,并在实体中,它看起来像这样:
@ElementCollection(targetClass = Genre.class)
@Enumerated(EnumType.STRING)
@CollectionTable(name = "film_genre")
@Column(name = "genre", nullable = false)
private List<Genre> genres;
如果我尝试更新一些电影并删除流派,保存后我需要从film_genres
中删除旧的流派。
我尝试在实体中的此字段中添加级联删除@Cascade(CascadeType.REMOVE)
,但它不起作用。如何在保存Film
时删除旧类型?
1条答案
按热度按时间xwbd5t1u1#
您可以在实体中使用@PreUpdate或@ PrePersists方法,并执行任何您想要的操作