인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
BEST
개발 · 프로그래밍

/

백엔드

스프링 데이터 JPA

JPA(Java Persistence API)를 보다 쉽게 사용할 수 있도록 여러 기능을 제공하는 스프링 데이터 JPA에 대해 학습합니다.

(4.8) 수강평 183개

수강생 2,496명

Thumbnail

중급자를 위해 준비한
[웹 개발, 백엔드] 강의입니다.

이런 걸
배워요!

  • ORM에 대한 이해

  • JPA 프로그래밍

  • Bean 생성 방법

스프링 JPA가 어렵게 느껴졌다면?
개념과 원리, 실제까지 확실하게 학습해 보세요.

제대로 배우는
백기선의 스프링 데이터 JPA

JPA(Java Persistence API)를 보다 쉽게 사용할 수 있도록 여러 기능을 제공하는 스프링 데이터 JPA에 대해 학습합니다.

왜 JPA를 학습해야 하나요?

  • 도메인 주도 개발이 가능합니다.
  • 애플리케이션의 코드가 SQL 데이터베이스 관련 코드에 잠식당하는 것을 방지하고, 도메인 기반의 프로그래밍으로 비즈니스 로직을 구현하는데 집중할 수 있습니다.
  • 그리고 개발 생산성에 좋으며, 데이터베이스에 독립적인 프로그래밍이 가능하고, 타입 세이프한 쿼리 작성 그리고 Persistent Context가 제공하는 캐시 기능으로 성능 최적화까지 가능합니다.

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


이 강의가 도움이 되는 분들 

JPA 또는 하이버네이트 
프로그래밍을 시작하는 
학생 또는 개발자

ORM과 JPA 그리고 
스프링 데이터 JPA의 
원리를 이해하고 싶은 분 

스프링 데이터 JPA를 
처음 사용하거나 
더 잘 활용하고 싶은 분 


다음 내용을 
학습합니다.

📖 Spring Data JPA → JPA (Hibernate) → JDBC

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

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

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


학습 목표를 
확인해 보세요.

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

📢 참고 사항을 확인해주세요.

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

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • JPA 또는 하이버네이트 프로그래밍을 시작하는 분

  • ORM, JPA, 스프링 데이터 JPA의 원리를 이해하고 싶은 분

  • 스프링 데이터 JPA를 처음 사용하거나 혹은 더 잘 활용하고 싶은 분

선수 지식,
필요할까요?

  • 자바 프로그래밍

  • 스프링 기초

안녕하세요
백기선입니다.

수강생 수

90,119

수강평 수

3,996

강의 평점

4.8

강의 수

20

네이버와 아마존을 거쳐 현재 Microsoft에서 시니어 소프트웨어 엔지니어로 일하고 있습니다.

아인슈타인은 "교육이란 사실을 가르치는 것이 아니라, 생각할 수 있는 힘을 기르는 것이다."라고 말했습니다. 그리고 저도 그 말에 깊이 공감하며 강의를 만들고 있습니다.

유튜브:
'백기선' 채널에서 개발자 고민 상담 및 개발자에게 유용한 지식 공유
번역: 스프링 및 하이버네이트 관련 서적 다수 번역
저술: 쉽게 따라하는 자바 웹 개발

커리큘럼

전체

45개 ∙ (9시간 22분)

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!