Использование аннотации @Where для абстрактного класса @MappedSuperclass - PullRequest
0 голосов
/ 04 марта 2019

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

...