小编Pet*_*Pan的帖子

当子实体被删除时,Hibernate 确实执行更新而不是删除操作

我有两个实体,父项(项目)具有历史实体列表,当我从子列表(历史记录)中删除旧行时,item.getHistories().remove(0)我希望 Hibernate 对子行执行删除操作,但 Hibernate 会更新外部行关键null。此更新会导致NOT NULL VIOLATION,因此外键具有NOT NULL约束。

这是我的父实体:

@Data
@EqualsAndHashCode(callSuper = true)
@Entity
@Table(name = "item", schema = "public", catalog = "foo")
public class RepricingItem extends BaseDatesEntity {

    @Id
    @SequenceGenerator(name="item_id_seq", sequenceName = "item_id_seq", allocationSize = 5)
    @GeneratedValue(strategy = SEQUENCE, generator = "item_id_seq")
    @Column(name = "id", unique = true, insertable = true, updatable = false, nullable = false)
    protected Long id;

    @Size(min = 1, max = 100)
    @Column(name = "title", …
Run Code Online (Sandbox Code Playgroud)

java hibernate jpa

3
推荐指数
1
解决办法
3276
查看次数

标签 统计

hibernate ×1

java ×1

jpa ×1