Sobes.tech
Junior — Middle

Quelle syntaxe peut-on appliquer lors de l'utilisation de l'annotation @Query dans Spring Data JPA?

sobes.tech IA

Réponse de l'IA

L'annotation @Query dans Spring Data JPA permet d'écrire des requêtes JPQL ou SQL personnalisées directement dans le référentiel. La syntaxe peut être la suivante :

  • Requêtes JPQL (par défaut) :
@Query("SELECT u FROM User u WHERE u.email = ?1")
User findByEmail(String email);
  • Utilisation de paramètres nommés :
@Query("SELECT u FROM User u WHERE u.email = :email")
User findByEmail(@Param("email") String email);
  • Requêtes SQL natives (si vous souhaitez utiliser du SQL spécifique) :
@Query(value = "SELECT * FROM users WHERE email = ?1", nativeQuery = true)
User findByEmailNative(String email);

Ainsi, @Query permet de définir des requêtes de manière flexible, en utilisant des paramètres positionnels ou nommés, et en choisissant entre JPQL et SQL natif.