Sobes.tech
Junior — Middle

Come formulare una query SQL per l'integrazione con i repository di Spring Data JPA?

sobes.tech AI

Risposta dell'AI

In Spring Data JPA, per integrare le query SQL con i repository, si può usare l'annotazione @Query. Questa permette di scrivere query SQL native o JPQL direttamente nell'interfaccia del repository.

Esempio con query SQL nativa:

public interface UserRepository extends JpaRepository<User, Long> {
    @Query(value = "SELECT * FROM users WHERE status = ?1", nativeQuery = true)
    List<User> findByStatus(String status);
}

Esempio con query JPQL:

public interface UserRepository extends JpaRepository<User, Long> {
    @Query("SELECT u FROM User u WHERE u.status = ?1")
    List<User> findByStatus(String status);
}

In questo modo, la query SQL viene formata all'interno dell'annotazione @Query, e Spring Data JPA la integra automaticamente con il repository e la esegue al chiamare il metodo.