Sobes.tech
Junior — Middle

Milyen szintaxist lehet alkalmazni a @Query annotáció használata során a Spring Data JPA-ban?

sobes.tech MI

Válasz az MI-től

A @Query annotáció a Spring Data JPA-ban lehetővé teszi saját JPQL vagy SQL lekérdezések közvetlen írását a repository-ban. A szintaxis a következő lehet:

  • JPQL lekérdezések (alapértelmezett):
@Query("SELECT u FROM User u WHERE u.email = ?1")
User findByEmail(String email);
  • Névvel ellátott paraméterek használata:
@Query("SELECT u FROM User u WHERE u.email = :email")
User findByEmail(@Param("email") String email);
  • Natív SQL lekérdezések (ha konkrét SQL-t szeretnél használni):
@Query(value = "SELECT * FROM users WHERE email = ?1", nativeQuery = true)
User findByEmailNative(String email);

Így a @Query rugalmasan lehetővé teszi a lekérdezések meghatározását, pozíciós vagy névvel ellátott paraméterek használatával, valamint a JPQL és a natív SQL közötti választással.