Я пытаюсь унаследовать следующий параметр в интерфейсе Java (пример из Spring Data JPA, но вопрос, как правило, о параметрах в аннотации):Наследование в аннотации параметры
public interface ItemRepository<T extends Item> extends BaseRepository<T> {
public final String type = null;
@Query("select distinct i from " + type + " i " +
"join i.tags t " +
"join fetch i.locale where t = ?1")
public List<T> findByTag(Tag t);
}
так, что в унаследованных интерфейсов I могли бы просто:
public interface EventRepository extends ItemRepository<Event> {
public final static String type = "Event";
}
Но, к сожалению, строковое значение переменной «типа» связан с переменной слишком поздно, поэтому при создании аннотации, то значение по-прежнему нулевой. Могу ли я заставить компилятор связать переменную с дочерним интерфейсом?
Благодаря
Я считаю, что это то, на что рассчитан одиночный шаблон. –
Но это интерфейсы, а не классы. Не могли бы вы рассказать? Я заинтересован! :) – m0skit0