스프링 핵심 원리 - 기본편 [ 목차 ]

문지원(JiwonMoon)·2021년 10월 31일
0
post-thumbnail

전체 목차

1. 객체 지향 설계와 스프링

  • 스프링이란?
  • 좋은 객체 지향 프로그래밍이란?
  • 좋은 객체 지향 설계의 5가지 원칙(SQLID)
  • 객체 지향 설계와 스프링

2. 스프링 핵심 원리 이해1 - 예제 만들기

  • 예제만들기
    - 비즈니스 요구사항과 설계
    - 회원 도메인 설계
    - 회원 도메인 개발
    - 회원 도메인 실행과 테스트
    - 주문과 할인 도메인 설계
    - 주문과 할인 도메인 개발
    - 주문과 할인 도메인 실행과 테스트

3. 스프링 핵심 원리 이해2 - 객체 지향 원리 적용

  • 객체 지향 원리 적용
    - 새로운 할인 정책 개발
    - 새로운 할인 정책 적용과 문제점
    - 관심사의 분리
    - AppConfig 리팩터링
    - 새로운 구조와 할인 정책 적용
    - 전체 흐름 정리
    - 좋은 객체 지향 설계의 5가지 원칙의 적용
    - IoC, DI, 그리고 컨테이너
    - 스프링으로 전환하기

4. 스프링 컨테이너와 스프링 빈

  • 스프링 컨테이너 생성

  • 컨테이너에 등록된 모든 빈 조회

  • 스프링 빈 조회

    • 기본
    • 동일한 타입이 둘 이상
    • 상속 관계
  • BeanFactory와 ApplicationContext

  • 다양한 설정 형식 지원 (자바코드, XML)

  • 스프링 빈 설정 메타 정보 (BeanDefinition)

5. 싱글톤 컨테이너

  • 웹 애플리케이션과 싱글톤
  • 싱글톤 패턴
  • 싱글톤 컨테이너
  • 싱글톤 방식의 주의점
  • @Configuration과 싱글톤
  • @Configuration과 바이트코드 조작의 마법

6. 컴포넌트 스캔

  • 컴포넌트 스캔과 의존관계 자동 주입 시작
  • 탐색 위치와 기본 스캔 대상
  • 필터
  • 중복 등록과 충돌

7. 의존관계 자동 주입

  • 다양한 의존관계 주입 방법
  • 옵션 처리
  • 생성자 주입을 선택
  • 롬복과 최신 트렌드
  • 조회 빈이 2개 이상 (문제)
  • @Autowired 필드 명, @Qualifier, @Primary
  • 에노테이션 직접 만들기
  • 조회한 빈이 모두 필요할 때 (List, Map)
  • 자동, 수동의 올바른 실무 운영 기준

8. 빈 생명주기 콜백

  • 빈 생명주기 콜백 시작
  • 인터페이스 (InitializingBean, DisposableBean)
  • 빈 등록 초기화, 소멸 메소드 지정
  • 에노테이션 @PostConstruct, @PreDestroy

9. 빈 스코프

  • 빈 스코프란?
  • 프로토타입 스코프
    • 기본
    • 싱글톤 빈과 함께 사용시 문제점
    • 싱글톤 빈과 함께 사용시 Provider로 문제 해결
  • 웹 스코프
  • request 스코프 예제 만들기
  • 스코프와 Provider
  • 스코프와 프록시

References (참고 자료)

0개의 댓글