~/tech-blog/series/spring-core — zsh

스프링 핵심 원리 18 posts

Spring · 다 읽는 데 약 47분

01

객체 지향 설계와 스프링

스프링을 배우기에 앞서 다형성과 역할-구현 분리, SOLID 5원칙이 왜 좋은 객체 지향 설계의 토대가 되는지 정리합니다.

4 min
02

예제 만들기

회원 조회와 주문 할인 정책 예제를 구현하며 DIP 위반 문제를 발견하고, AppConfig로 관심사를 분리하는 과정을 정리합니다.

3 min
03

AppConfig 리팩터링

중복이 있던 AppConfig를 리팩터링해 역할과 구현이 한눈에 드러나도록 정리하고, 그 과정에서 지켜지는 SOLID 원칙을 살펴봅니다.

1 min
04

스프링 빈으로 전환하기

순수 자바 코드로 작성했던 AppConfig를 @Configuration과 @Bean으로 전환해 스프링 컨테이너에 빈을 등록하는 과정을 정리합니다.

1 min
05

BeanFactory와 ApplicationContext

스프링 컨테이너의 최상위 인터페이스인 BeanFactory와, 이를 상속해 다양한 부가 기능을 제공하는 ApplicationContext의 역할을 정리합니다.

2 min
06

XML로 스프링 빈 설정하기

자바 코드 대신 XML로 스프링 빈을 설정하는 방법과, 다양한 설정 형식을 가능하게 하는 BeanDefinition 추상화를 정리합니다.

2 min
07

웹 애플리케이션과 싱글톤

매번 new로 객체를 생성하던 AppConfig의 문제를 직접 구현한 싱글톤 패턴과 스프링 컨테이너로 각각 해결해 봅니다.

2 min
08

싱글톤 방식의 주의점

싱글톤 빈은 상태를 공유하기 때문에 무상태로 설계해야 한다는 점을 StatefulService 예제로 확인합니다.

1 min
09

싱글톤 컨테이너와 @Configuration

AppConfig가 여러 번 호출되어도 싱글톤이 보장되는 이유를 @Configuration과 CGLIB 바이트코드 조작을 통해 분석합니다.

3 min
10

컴포넌트 스캔

설정 정보 없이 스프링 빈을 자동으로 등록하는 컴포넌트 스캔과 @Autowired 의존관계 자동 주입의 동작 방식을 정리합니다.

4 min
12

조회 빈이 2개 이상 충돌할 때

스프링에서 @Autowired로 조회한 빈이 2개 이상일 때 발생하는 충돌을 필드명 매칭, @Qualifier, @Primary로 해결하는 방법을 정리합니다.

4 min
15

빈 생명주기 콜백

스프링 빈의 생명주기와 초기화·소멸 콜백을 인터페이스, 설정 정보, @PostConstruct/@PreDestroy 세 가지 방식으로 비교해 정리합니다.

4 min
16

프로토타입 스코프와 싱글톤 빈

싱글톤과 프로토타입 빈 스코프의 차이를 살펴보고, 싱글톤 빈이 프로토타입 빈을 주입받을 때 발생하는 문제를 예제로 정리합니다.

4 min
18

웹 스코프

웹 스코프와 request 스코프의 동작 방식을 살펴보고, ObjectProvider와 CGLIB 프록시로 스코프 문제를 해결하는 방법을 정리합니다.

5 min
● main 214 posts UTF-8 LF © 2026 코징 RSS · GitHub