📱인프런 모바일 App 😆
스프링 데이터 JPA

스프링 데이터 JPA

(38개의 수강평)

847명의 수강생

88,000원

평생
활용
수료증
44개 수업, 총 8시간 53분
위시리스트 추가

스프링 데이터 JPA

JPA(Java Persistence API)를 보다 쉽게 사용할 수 있도록 여러 기능을 제공하는 스프링 데이터 JPA에 대해 학습합니다.
왜 JPA를 학습해야 하는가?
  • 도메인 주도 개발이 가능합니다.
  • 애플리케이션의 코드가 SQL 데이터베이스 관련 코드에 잠식 당하는 것을 방지하고 도메인 기반의 프로그래밍으로 비즈니스 로직을 구현하는데 집중할 수 있습니다.
  • 그리고 개발 생산성에 좋으며, 데이터베이스에 독립적인 프로그래밍이 가능하고, 타입 세이프한 쿼리 작성 그리고 Persistent Context가 제공하는 캐시 기능으로 성능 최적화까지 가능합니다.

이러한 여러 장점을 지닌 JPA의 한가지 단점. 높은 학습 비용. 이번 강좌가 그 학습 비용을 조금이라도 낮추는데 도움이 되길 바랍니다.

이번 강좌는 먼저 ORM(Object-Relational Mapping)이 해결하려는 문제 즉, 객체(Object)와 관계형(Relational) 데이터베이스의 개념적인 불일치에 대해 학습합니다.

다음으로 ORM의 구현체인 JPA와 하이버네이트의 중요한 특징을 학습합니다. 특히, Fetching 전략과 엔티티의 라이프사이클을 이해해야 성능을 고려하며 JPA 프로그래밍을 할 수 있습니다.

이어서, 스프링 데이터 JPA의 마술과도 같은 빈 생성 방법도 살펴봅니다. 핵심 개념 원리에 대한 학습을 마치고 본격적으로 스프링 데이터 JPA의 다양한 활용 방법을 살펴봅니다. 기본으로 제공하는 기능부터 살펴보고 다양한 커스터마아징 및 여러 기술 연동 방법을 학습합니다.

  학습 목표

ORM(Object-Relation Mapping)에 대해 이해합니다. JPA를 사용할 때 반드시 알아야 하는 특징을 이해합니다. 스프링 데이터 JPA의 구동 원리를 이해합니다. 스프링 데이터 JPA를 사용하여 다양한 방법으로 Repository를 구현할 수 있습니다. 스프링 데이터 JPA를 사용하여 다양한 방법으로 쿼리를 만들고 실행할 수 있습니다.

도움이 되는 분들

  • JPA 또는 하이버네이트 프로그래밍을 시작하는 학생 또는 개발자.
  • ORM과 JPA 그리고 스프링 데이터 JPA의 원리를 이해하고 싶은 학생 또는 개발자.
  • 스프링 데이터 JPA를 처음 사용하거나 혹은 더 잘 활용하고 싶은 학생 또는 개발자.

참고 사항

  • 자바 프로그래밍에 경험이 있다고 가정합니다.
  • JDK, 데이터베이스, IDE, 빌드툴 설치에 관한 내용을 다루지 않습니다.
  • 본 강좌는 메이븐, JDK 1.8, 도커, PostgreSQL, H2, 인텔리J, 스프링 부트를 사용합니다.

  지식공유자 소개

백기선
현재 마이크로소프트에서 개발자로 재직중입니다. 이전에 아마존과 네이버에서 일을 했었습니다. 스프링 프레임워크와 하이버네이트(JPA)를 사용해서 개발하는 것을 좋아하며 온라인에서 강좌를 만들거나 유투브에 코딩 관련 동영상을 올리며 학습하고 또 공유하고 있습니다.

지식공유자 소개

백기선

교육과정

Intro
강좌 소개
04 : 00
강사 소개
02 : 00
강의자료
핵심 개념 이해
관계형 데이터베이스와 자바
20 : 00
ORM 개요
14 : 00
ORM 패러다임 불일치
16 : 00
JPA 프로그래밍 1. 프로젝트 세팅
21 : 00
JPA 프로그래밍 2. 엔티티 타입 맵핑
22 : 00
JPA 프로그래밍 3. Value 타입 맵핑
07 : 00
JPA 프로그래밍 4. 관계 맵핑
18 : 00
JPA 프로그래밍 5. 엔티티 상태와 Cascade
19 : 00
JPA 프로그래밍 6. Fetch
10 : 00
JPA 프로그래밍 7. 쿼리
12 : 00
스프링 데이터 JPA 원리
16 : 00
핵심 개념 마무리
08 : 00
스프링 데이터 JPA 활용
스프링 데이터 JPA 활용 파트 소개
03 : 00
스프링 데이터 Common 1. 리포지토리
23 : 00
스프링 데이터 Common 2. 인터페이스 정의하기
08 : 00
스프링 데이터 Common 3. Null 처리
13 : 00
스프링 데이터 Common 4. 쿼리 만들기
21 : 00
스프링 데이터 Common 4. 쿼리 만들기 실습
17 : 00
스프링 데이터 Common 6. 비동기 쿼리 메소드
19 : 00
스프링 데이터 Common 7. 커스텀 리포지토리 만들기
22 : 00
스프링 데이터 Common 8. 기본 리포지토리 커스터마이징
10 : 00
스프링 데이터 Common 9. 도메인 이벤트
16 : 00
스프링 데이터 Common 10. QueryDSL 연동
25 : 00
스프링 데이터 Common 11. 웹 기능 1부 소개
07 : 00
스프링 데이터 Common 12. 웹 기능 2부 DomainClassConverter
15 : 00
스프링 데이터 Common 13. 웹 기능 3부 Pageable과 Sort
07 : 00
스프링 데이터 Common 14. 웹 기능 4부 HATEOAS
07 : 00
스프링 데이터 Common 15. 정리
04 : 00
스프링 데이터 JPA 1. JpaRepository
10 : 00
스프링 데이터 JPA 2. JpaRepository.save() 메소드
13 : 00
스프링 데이터 JPA 3. JPA 쿼리 메소드
07 : 00
스프링 데이터 JPA 4. Sort
03 : 00
스프링 데이터 JPA 5. Named Parameter와 SpEL
03 : 00
스프링 데이터 JPA 6. Update 쿼리
09 : 00
스프링 데이터 JPA 7. EntityGraph
14 : 00
스프링 데이터 JPA 8. Projection
14 : 00
스프링 데이터 JPA 9. Specifications
10 : 00
스프링 데이터 JPA 10. Query by Example
10 : 00
스프링 데이터 JPA 11. 트랜잭션
14 : 00
스프링 데이터 JPA 12. Auditing
13 : 00
스프링 데이터 JPA 마무리
07 : 00

수강 후기

4.8
38개의 수강평
이승익 6달 전
springdatajpa ? 어렵지만, 재밌었습니다. 복습하며 계속 이해하고, 심화 공부하겠습니다. 감사합니다 ^^. 이제 또 다른 강좌 시작하겠습니다.
PureDouble 4일 전
자바로 백엔드 개발을 하게되면서 백기선님 강좌를 알게 된게 참 도움이 많이 되었습니다. 이번 강좌까지 해서 모두 구매했는데 이제 한번씩 다 보았네요. 앞으로 계속 돌려보면서 확실하게 이해 할 수 있도록 하겠습니다. 좋은 강좌 만들어 주셔서 감사합니다!!