Sobes.tech
Junior — Middle

Jak sestavit SQL dotaz pro integraci s repozitáři Spring Data JPA?

sobes.tech AI

Odpověď od AI

V Spring Data JPA lze pro integraci SQL dotazů s repozitáři použít anotaci @Query. Umožňuje psát nativní SQL nebo JPQL dotazy přímo v rozhraní repozitáře.

Příklad s nativním SQL dotazem:

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

Příklad s JPQL dotazem:

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

Tímto způsobem je SQL dotaz formulován uvnitř anotace @Query, a Spring Data JPA jej automaticky integruje s repozitářem a provede při volání metody.