Tag: soft delete

Hibernate:如何只获取非逻辑删除的对象

几乎我们数据库中的每个表都有一个FK到审计表,它记录创建,更新和删除的状态(日期和用户名)。 我们将审计表映射到Auditing类并使用它如下: @MappedSuperclass public class BusinessObject extends DataObject { private static final long serialVersionUID = -1147811010395941150L; @OneToOne(fetch = FetchType.EAGER, cascade = { CascadeType.ALL }) @JoinColumn(name = “AUD_ID”) private AuditingObject auditing; … 正如您所期望的那样,几乎每个实体都从BusinessObject扩展而来。 有一种简单的方法可以说,对于每个businessObject,只接收“auditing.deleted为null”。 我已经尝试在businessObject中添加@Where和@WhereJoinTable,但这似乎并不像我期望的那样工作。 目前,我已经对我的一个查询进行了此操作,但这是有效的,但我讨厌为所有查询执行此操作,因为我们有大约150个查询。 @NamedQuery( name=”allCountries”, query=”SELECT c FROM Country c” + ” LEFT JOIN FETCH c.labelDefinition ” + ” LEFT JOIN FETCH c.labelDefinition.translations […]