При выполнении выборки с использованием 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
работать в абстрактном классе сущностей?Или я просто делаю это неправильно?