当在具有其父类且带有Repository
批注的实体类中使用@Where
进行提取时,@Where
批注似乎不起作用。
即使该行在数据库中有rowStatus='DELETED'
,该行仍可以由存储库提取。
我有这些课程:
@MappedSuperclass
@Where(clause = "row_status='ACTIVE'")
public abstract class BaseSoftDeleteEntity {
@Column
private RowStatus rowStatus; // RowStatus={ACTIVE, DELETED}
// other fields, setters, getters
}
@Entity
public class ImportantData extends BaseSoftDeleteEntity {
// fields, setters, getters
}
我试图将@Where
注释移到ImportantData
子类中,并且@Where
现在可以正常工作了。
是否有一种方法可以使@Where
注释在抽象实体类中工作?还是我做错了?