Spring Boot

Zapytania JPA

Zapytania JPA: wyprowadzanie z nazwy metody, @Query z JPQL, zapytania natywne, paginacja, sortowanie

30 pytań z rozmów·
Mid-Level
1

Czym jest JPQL?

Odpowiedź

JPQL (Java Persistence Query Language) to język obiektowy, który odpytuje encje JPA, a nie tabele bazy danych. W przeciwieństwie do natywnego SQL, JPQL używa nazw klas i właściwości, co utrzymuje abstrakcję obiektową i ułatwia przenośność między różnymi systemami baz danych. Domyślnie należy używać JPQL, chyba że potrzebne są specyficzne funkcje SQL.

2

Która adnotacja umożliwia wykonanie niestandardowego zapytania JPQL lub SQL?

Odpowiedź

Adnotacja @Query umożliwia definiowanie niestandardowych zapytań bezpośrednio w repozytoriach Spring Data JPA. Domyślnie może zawierać JPQL lub natywny SQL, jeśli atrybut nativeQuery jest ustawiony na true. Ta adnotacja oferuje większą elastyczność niż query methods wyprowadzone z nazwy metody, zwłaszcza w przypadku złożonych zapytań z joinami lub podzapytaniami.

3

Jak powiązać parametr metody z zapytaniem @Query?

Odpowiedź

Adnotacja @Param umożliwia jawne nazywanie parametrów używanych w zapytaniach @Query. To podejście jest bardziej czytelne i odporne niż używanie pozycji indeksowanych, zwłaszcza podczas refaktoryzacji kodu. Adnotacja jest obowiązkowa dla parametrów nazwanych w JPQL i zalecana nawet w przypadku natywnych zapytań SQL, aby poprawić łatwość utrzymania.

4

W JPQL, która klauzula umożliwia filtrowanie wyników?

5

Jaka jest główna różnica między JPQL a natywnym SQL?

+27 pytań z rozmów

Opanuj Spring Boot na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo