我在修改 OneToMany 关系表时遇到问题
我有
@Audited
EntityA {
@Id
Integer id;
@OneToMany(mappedBy = "entityA", cascade = CascadeType.ALL)
private List<EntityB> entityBs;
}
和
@Audited
EntityB {
@Id
Integer id;
@Column(name = "ENTITY_A_ID", nullable = false)
private Long entityAId;
@ManyToOne
@JoinColumn(name = "ENTITY_A_ID", insertable = false, updatable = false)
private EntityA entityA;
}
我希望每次删除或创建 EntityB 时,envers 都会创建 EntityA 的新修订版。
阅读文档我了解到 org.hibernate.envers.revision_on_collection_change 是正确的配置属性,默认设置为 true。 所以我不明白为什么在创建或删除相关 EntityB 时我没有看到 EntityA 上的任何新修订。 我尝试独立创建 EntityB 并尝试通过创建
entityA.getEntityB().add(entityB) repository.save(entityA)
但未保存 EntityA 的修订版
有什么建议吗? 提前致谢
我的配置 弹簧靴:2.4.4 休眠/休眠:5.4.29 jdk 11