목표 : 스프링 정복을 목표로 하는 자바 백엔드 개발자를 대상으로 실제 실무에 쓰이는 스프링의 핵심을 완전히 마스터 할 수 있도록 하는 것
IDE : IntelliJ
SpringBoot : 2.7.9
Language : Java (17)
Test api : Postman
SSR : Thymeleaf
Git : Fork
웹 애플리케이션 이해
서블릿
- JSP
- MVC 패턴
스프링 MVC
- 스프링 MVC - 구조
- 스프링 MVC - 기본 기능
- 스프링 MVC - 웹 페이지
타임리프
- 기본 기능
- 스프링 통합과 폼
메시지, 국제화
검증
- Validation
- Bean Validation
로그인 처리
- 쿠키, 세션
- 필터, 인터셉터
예외 처리와 오류 페이지
- API 예외 처리
스프링 타입 컨버터
파일 업로드
도메인 분석 설계
- 도메인, 테이블 설계
- 엔티티 클래스
애플리케이션 아키텍쳐
회원 도메인
- Repository
- Service
- Function
상품 도메인
- Entitiy
- Repository
- service
주문 도메인
- Entity
- Repository
- Service
- Function
웹 계층 개발
API 개발 기본
- 회원 등록 수정 조회 API
API 개발 고급
- 지연로딩과 조회성능 최적화
- 컬렉션 조회 최적화
- OSIV와 성능 최적화
- JPA + QueryDSL
Spring & JPA 기반 테스트
- TDD: Test Driven Development
- 레이어드 아키텍처 별 API 설계
- Mocking 프레임워크 Mockito 테스트 코드
- API 문서 자동화 (REST Docs)
객체지향 개념(OOP)
- Object 클래스
- 불변 객체
- String, 래퍼, Class 클래스
- 열거형 : ENUM
- 날짜와 시간
- 중첩 클래스, 내부 클래스
- 예외 처리
제네릭과 컬렉션
- 제네릭
- 컬렉션 프레임워크
- 순회, 정렬, 전체