Подход по умолчанию (в сущности):
@Entity
@Table(...)
@SqlResultSetMapping(name = "SomeName", classes = @ConstructorResult(targetClass = SomeClass.class, columns = {...}))
@NamedNativeQuery(name = "CurrEntity.getSomeSelect"), query = "...", resultSetMapping = "SomeName")
public class CurrEntity ...
В JpaRepository он работает правильно с методом List<SomeClass> getSomeSelect()
Запрос очень большой, и я хочу переместить его в файл свойств.Это очень простая задача - просто создайте classpath:/META-INF/jpa-named-queries.properties
по умолчанию или измените новый путь с помощью @EnableJpaRepositories(namedQueriesLocation = "classpath:new-name.properties")
, и тогда я смогу удалить @NamedNativeQuery из класса сущностей и использовать метод в JpaRepository.
Но!Теперь я не могу установить отображение результатов, которое было в @NamedNativeQuery (resultSetMapping = "SomeName").
Я пытался найти решение, но ничего не нашел.Также я осмотрел spring-jpa-data и тоже ничего не нашел.Может быть, другие способы присутствуют?