스프링 데이터 JPA5 [7일 차] - 과제 수행 : Spring Data JPA 사용하기 인프런에서 주최하는 Warming-up 클럽 0기 백엔드 스터디에 참여하고 있다. 스터디에 참여하면서 배우게 된 내용을 전체적으로 정리하고 과제로 수행했던 내용들을 정리해 보고자 한다. (1) 7일 차 : 2024-02-27(Tue) (2) 과제 수행 : GitHub 코드 : https://github.com/twojun/InFlearn_WarmingUp_Club_BE_0 GitHub - twojun/InFlearn_WarmingUp_Club_BE_0: Inflearn Warming-up Club Back-end Study 0기 (Java, Spring) Inflearn Warming-up Club Back-end Study 0기 (Java, Spring) - twojun/InFlearn_WarmingU.. 2024. 2. 26. [7일 차] - 내용 정리, 개인 회고 인프런에서 주최하는 Warming-up 클럽 0기 백엔드 스터디에 참여하고 있다. 스터디에 참여하면서 배우게 된 내용을 전체적으로 정리하고, 참여하면서 느낀 부분을 회고해 보고자 한다. (1) 7일 차 : 2024-02-27(Tue) 1. Repository 영역에서 지금까지 작성한 코드 (1) Repository에서 데이터베이스와의 통신을 위해 직접적으로 쿼리를 사용했다. 하지만 SQL을 직접적으로 사용하면서 아래와 같은 단점들이 존재했다. 1-1. 쿼리를 직접 작성하면 아쉬운 점? (1) 문자열 기반으로 작성되기 때문에 실수할 수 있고 실수를 인지할 수 있는 시점이 느려지게 된다. - 컴파일 시점이 아닌 런타임 시점에 오류가 발생하게 된다. (2) 특정 데이터베이스 벤더에 종속적인 쿼리가 발생하게 된.. 2024. 2. 24. [Spring Data JPA] - 쿼리 메서드 기능, JPA NamedQuery, Repository 사용자 정의 쿼리 메서드 1. 메서드 이름으로 쿼리 생성 이전 포스팅에서 마지막에 남은 궁금증이 하나 존재했다. 공통 영역을 벗어난 도메인에 특화된 기능들은 어떻게 해결해야 할까? (1) 스프링 데이터 JPA가 제공하는 강력한 쿼리 메서드 기능 3가지가 존재한다. - 메서드 이름을 분석하여 자체적인 쿼리 생성 - 메서드 이름으로 JPA NamedQuery 호출 - @Query 어노테이션을 사용하여 Repository Interface 영역에 직접 쿼리 메서드 정의하기 1-1. 메서드 이름으로 쿼리 생성 (1) 저번 포스팅에서 스프링 데이터 JPA를 상속받지 않았던 MemberJpaRepository에 사용자의 이름을 대상으로 특정 나이보다 나이가 많은 사용자를 조회하는 기능 요구사항이 추가되었다고 가정해 보자. @Reposito.. 2023. 10. 11. [Spring Data JPA] - 공통 인터페이스(Common Interface) 기능, 스프링 데이터 JPA 상속 계층도 1. 순수 JPA 기반 Repository 생성하기 (1) 우선 JPA만을 활용한 Repository를 생성하고 이후 Spring Data JPA의 공통 인터페이스(Common Interface)에 대해 알아본 뒤 이전에 생성했던 JPA 기반 Repository를 스프링 데이터 JPA로 적용해 보고 분석을 진행한다. 1-1. MemberJpaRepository 클래스 정의 package study.datajpa.repository; import jakarta.persistence.EntityManager; import jakarta.persistence.PersistenceContext; import org.springframework.stereotype.Repository; import study.da.. 2023. 10. 9. [Spring Data JPA] - Spring Data, Spring Data JPA는 무엇일까? 1. Spring Data 1-1. Spring Data의 정의 (1) Spring Data JPA를 알아보기 전에 Spring Data가 무엇인지 확인해 보자. (2) Spring Data는 데이터 계층의 엑세스를 단순화하고 효율적으로 처리할 수 있도록 도와주는 프로젝트 집합이다. (3) 이러한 Spring Data는 다양한 데이터베이스와의 상호작용을 간소화해서 개발자가 데이터베이스와 더 효율적으로 통신할 수 있도록 도와주고 있다. (4) Spring Data는 데이터베이스에 대한 다양한 모듈을 제공하고 있고 각 모듈들은 데이터베이스와의 통합을 담당하며 이를 통해 개발함으로써 편리하게 데이터를 다룰 수 있다는 장점이 있다. 1-2. Spring Data의 다양한 모듈과 기능 (1) Repository .. 2023. 10. 6. 이전 1 다음