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

/

백엔드

스프링 데이터 JPA

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

(4.8) 수강평 185개

수강생 2,500명

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,740

수강생

4,020

수강평

2,009

답변

4.8

강의 평점

20

강의

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

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

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

커리큘럼

전체

45개 ∙ (9시간 22분)

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

수강평

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