«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу выполнять собственные SQL-запросы в репозиториях данных Spring?

Как я могу выполнять собственные SQL-запросы в репозиториях данных Spring?

Опубликовано 10 ноября 2024 г.
Просматривать:608

How Can I Execute Native SQL Queries in Spring Data Repositories?

Выполнение собственного SQL в репозиториях данных Spring

Spring Data JPA предоставляет возможность выполнять собственные SQL-запросы в репозитории данных Spring с использованием @ Аннотация запроса. В отличие от типичных аннотаций @Query, которые работают с сущностями, собственные SQL-запросы могут напрямую взаимодействовать с базовой базой данных.

Чтобы выполнить собственный SQL в методе репозитория, установите для атрибута ownQuery аннотации @Query значение true. Например:

@Query(value = "SELECT * FROM MY_TABLE WHERE id = ?", nativeQuery = true)
List findByNativeSql(Long id);

Вышеуказанный метод выполнит собственный SQL-запрос «SELECT * FROM MY_TABLE WHERE id =?» и сопоставить результаты с классом Entity.

Кроме того, Spring Data JPA поддерживает именованные собственные запросы, которые определены в файле persistence.xml. Чтобы использовать именованный собственный запрос, просто укажите его имя в аннотации @Query следующим образом:

@Query("findByNativeSqlQuery")
List findByNativeSqlQuery(Long id);

Используя аннотацию @Query с параметром ownQuery, установленным в значение true, или используя именованные собственные запросы, разработчики могут легко интегрировать необработанные SQL-запросы в свои репозитории данных Spring, что позволяет повысить эффективность гибкость и детальный контроль над операциями с базой данных.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3