NGV CAMPUS

메뉴 뒤로가기

[SW/IT 스쿨] JPA 기반의 애플리케이션 설계 (대면)

[SW/IT 스쿨] JPA 기반의 애플리케이션 설계 (대면)
년도/차수 2025년 / 1차
교육기간 2025.05.19 - 2025.05.21
신청기간 2025.02.17 - 2025.05.14
교육시간 21.00시간
교육비 600,000원

연간교육계획

연간교육계획
차시 신청기간/교육기간 교육비 상태
1차 신청 : 2025.02.17 - 2025.05.14
학습 : 2025.05.19 - 2025.05.21
600,000원 마감

과정소개

- JPA를 이용해서 애플리케이션을 설계 할 때 고려해야하는 다양한 이슈를 살펴보고,
  유지보수성을 향상시킬 수 있는 설계 기법을 배웁니다.


난이도 및 방법

 - 실무 (Level3)  / 실습 및 강의

 

관련 역량

 - SW품질 관리 및 테스팅 Lv3, 프로그래밍 언어 / 프레임워크 Lv3 


과정 목표  

- JPA를 이용한 테이블 매핑 방법과 기본 메커니즘을 학습하여 효율적으로 JPA와 데이터베이스 간의 관계를 설정할 수 있다.  
- JPA 기반 애플리케이션 설계 방법을 학습하여 확장성과 유지보수성이 높은 애플리케이션을 설계할 수 있다.  
- N+1 문제와 같은 성능 이슈 해결을 위한 설계 방법을 학습하여 성능 최적화를 통해 효율적인 데이터 접근이 가능한 결과물을 산출한다.  

추천 대상  
- JPA를 이용해서 객체지향적으로 애플리케이션을 설계하는 방법을 익히고자 하는 분  
- N+1 문제와 같은 성능 이슈를 해결하기 위해 필요한 설계 기법을 배우고자 하는 분  
- JPA의 기본 개념과 아키텍처를 이해하고, 간단한 CRUD 애플리케이션을 개발해본 경험이 있는 분  
- ORM의 기본 원리를 이해하고, 이를 활용한 데이터베이스 연동 경험이 있는 분  

사전 필요 지식  
- JPA 기본 개념과 사용 경험
Spring 사용 경험

자바 프로그래밍 경험

 -JPA 기초  

 

 

※ 학습자 자가 체크리스트

- 자가 체크리스트를 통해,  교육 수강신청 전 본인에게 적합한 과정인지를 확인하실 수 있습니다.

  아래 질문에 대해 3가지 이상 '아니오' 에 해당하실 때에는 신청하지 않으시는 것을 추천드립니다.

1. 
나는 객체지향 설계 개념(클래스, 객체, 관계 등)을 이해하고 있다.

2. 나는 데이터베이스 기본 개념(테이블, 컬럼, 기본 키/외래 키 등)을 이해하고 있다.

3. 나는 Java 언어로 간단한 CRUD(Create, Read, Update, Delete) 프로그램을 작성할 수 있다.

4. 나는 ORM(Object-Relational Mapping)의 기본 개념을 들어본 적이 있다.

5. 나는 SQL 쿼리 작성과 결과 해석(SELECT, JOIN 등)이 가능하다

 

본 과정은 JPA를 처음부터 체계적으로 이해하고, 객체지향적 데이터베이스 접근 방식을 실무에 적용할 수 있도록 설계되었습니다.

이미 고급 수준의 JPA 튜닝, 복잡한 쿼리 최적화 경험이 있으신 분들께는 본 과정 수강을 추천드리지 않습니다.

 

사전 학습 과정

JPA & Spring Data JPA 기초 (Inflearn)

 

강의 장소

- 한양대학교 미래자동차연구센터 302호

- 2호선 한양대역 2번 출구 6분 도보 거리

- 네이버 지도 링크: https://naver.me/xv3ebCYU


강사 소개 : 조영호 강사

  - 경력

    · 前 무신사 본부장  
    · 前 우아한형제들 기술이사  
    · 前 NHN NEXT 백엔드 분야 교수  
 - 저서
   · "객체지향의 사실과 오해"

 - 연구 분야
    · 백엔드/플랫폼 엔지니어


준비 사항  
  - 개인 노트북 (필수)

수료 기준  
  - 출석 80% 이상  
  - 종합평가 60점 이상 (이해도평가 객관식 10문항 + 실습형 1문항)
  - 총합 70점 이상 (출석 50%, 평가 50%)  

교육 시간표  
[1일차]
09:00~10:00     ORM과 아키텍처(ORM 개념 및 특징, JPA와 트랜잭션 관리, 트랜잭션 스크립트와 도메인 모델)
10:00~11:00     절차적 설계와 트랜잭션 스크립트 패턴
11:00~12:00     기본 매핑 : 엔티티와 테이블 매핑, 식별자 매핑, 컬럼 매핑 (실습 포함)
12:00~13:00     점심시간
13:00~14:00     값 객체와 참조 개체 : 값 타입(Embeddable), 참조 타입, Converter를 활용한 매핑
14:00~15:30     JPA의 두 가지 측면 : 객체와 관계형 데이터베이스의 차이, 영속성 컨텍스트 개념
15:30~17:00     쿼리 - JPQL와 Spring Data JPA

[2일차]
09:00~10:00     객체지향 설계와 도메인 모델 패턴 : 도메인 주도 설계(DDD) 개념, 도메인 모델 설계 방법
10:00~12:00     연관관계 매핑 : 단방향 vs 양방향 매핑, 연관관계 설정 전략 (실습 포함)
12:00~13:00     점심시간
13:00~14:00     영속성 전이 : Cascade 옵션, orphanRemoval 활용 방법
14:00~15:00     즉시 로딩과 지연 로딩
15:00~16:00     컬렉션 매핑
16:00~17:00     상속 관계 매핑

[3일차]
09:00~10:00     애그리게이트와 연관 관계
10:00~12:00     컬렉션과 지연 로딩 : 지연 로딩 전략 분석, 엔티티 그래프 적용
12:00~13:00     점심시간
13:00~14:00     동시성 제어 : 비관적 락(Pessimistic Lock)과 낙관적 락(Optimistic Lock), 동시성 문제 해결
14:00~15:30     애그리게이트 완성하기
15:00~16:30     JPA를 기반으로 협업하기 : JPA 활용 시 DBA와 협업하는 방법 (쿼리 트래킹, 실행 계획 분석, 성능 최적화)
16:30~17:00     학습 내용 확인 평가

과정 담당자

담당자명 : 이성한 / 연락처 : 02-870-8434

강의목차

교시 일시 강의명
강의 목차가 없습니다.

PC 페이지로 이동

PC 페이지로 이동 하시면
상세정보를 보실 수 있습니다.