1_Spring_Data_Jpa개요.pdf

Spring Data JPA = JPA + Repository 추상화 + 자동 쿼리 생성 + 페이징/정렬 지원

스크린샷 2025-09-19 오전 9.03.03.png

주요 특징

  1. Repository 추상화

    스크린샷 2025-09-19 오전 9.11.48.png

    public interface UserRepository extends JpaRepository<User, Integer> {
    }
    

    → 이렇게만 선언하면 Spring Data JPA가 자동으로 구현체를 만들어 Bean으로 등록

  2. 쿼리 메서드(Query Method)

    List<User> findByName(String name);
    List<User> findByAgeGreaterThan(int age);
    

    → SQL을 안 써도 메서드로 JPQL을 만들어줌

  3. JPQL / @Query 지원

    @Query("SELECT u FROM User u WHERE u.status = :status")
    List<User> findByStatus(@Param("status") String status);
    
  4. Querydsl 통합 가능

  5. 페이징 & 정렬 지원

    Page<User> findByAge(int age, Pageable pageable);