Слишком длинные имена методов в Spring JPA - PullRequest
1 голос
/ 22 сентября 2019

Я использую Spring Data JPA.Я использую нормализованную базу данных, что означает, что для получения полной информации о том, что я хочу, мне нужно объединить множество таблиц.Как вы знаете, JPA генерирует имя метода на основе запроса.Но из-за нескольких объединений имя моего метода становится таким длинным.иногда его более 250 символов.Я ищу аннотацию @query с методами JPA вместо автоматически сгенерированных имен методов JPA.Я хочу знать о влиянии на производительность, если я использую аннотацию @query?Также, пожалуйста, предложите любые альтернативы для решения моих длинных имен методов с учетом производительности.

1 Ответ

1 голос
/ 22 сентября 2019

Всякий раз, когда вы пишете свой запрос, используя Spring Data (т.е. List<MyObj> findAllByName(String name)), данные пружины фактически генерируют ваш запрос так же, как вы написали бы его, используя аннотацию @Query.Таким образом, технически говоря, время загрузки будет быстрее, если вы напишите свои запросы как HQL или JPQL в аннотации @Query.Конечно, самый эффективный способ - использовать нативные запросы, но это может стать проблемой в дальнейшем в игре.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...