Junior — Middle
Πώς διαμορφώνεται ένα ερώτημα SQL για ενσωμάτωση με τα αποθετήρια Spring Data JPA;
sobes.tech AI
Απάντηση από AI
Στο Spring Data JPA, για την ενσωμάτωση ερωτημάτων SQL με τα repositories, μπορείτε να χρησιμοποιήσετε την ανάρτηση @Query. Αυτό επιτρέπει να γράψετε εγγενή ερωτήματα SQL ή JPQL απευθείας στη διεπαφή του repository.
Παράδειγμα με εγγενές ερώτημα SQL:
public interface UserRepository extends JpaRepository<User, Long> {
@Query(value = "SELECT * FROM users WHERE status = ?1", nativeQuery = true)
List<User> findByStatus(String status);
}
Παράδειγμα με ερώτημα JPQL:
public interface UserRepository extends JpaRepository<User, Long> {
@Query("SELECT u FROM User u WHERE u.status = ?1")
List<User> findByStatus(String status);
}
Έτσι, το ερώτημα SQL διαμορφώνεται μέσα στην ανάρτηση @Query, και το Spring Data JPA το ενσωματώνει αυτόματα με το repository και το εκτελεί κατά την κλήση της μεθόδου.