오봉이와 함께하는 개발 블로그

스프링 핵심 원리 - 고급편 > 빈 후처리기 소개 본문

BE/Spring

스프링 핵심 원리 - 고급편 > 빈 후처리기 소개

오봉봉이 2024. 10. 6. 00:58
728x90

스프링 핵심 원리 - 고급편 > 빈 후처리기

image

@Bean이나 컴포넌트 스캔으로 스프링 빈을 등록하면 스프링은 대상 객체를 생성하고, 스프링 컨테이너 내부의 빈 저장소에 등록한다.
이후에 스프링 컨테이너를 통해 등록한 스프링 빈을 조회해서 사용하면 된다.

빈 후처리기 - BeanPostProcessor

스프링이 빈 저장소에 등록할 목적으로 생성한 객체를 빈 저장소에 등록하기 직전에 조작하고 싶다면 빈 후처리기를 사용하면 된다.
빈 포스트 프로세서는 말 그대로 빈 후처리기 라는 뜻으로 빈을 생성한 후 무언가를 처리하는 용도로 사용된다.

빈 후처리기 기능

빈 후처리기의 기능은 막강한데, 객체를 조작할 수도 있고, 완전히 다른 객체로 바꿔치기 하는 것도 가능하다.

image
  1. 생성: 스프링 빈 대상이 되는 객체롤 생성한다 (@Bean, 컴포넌트 스캔 모두 포함)
  2. 전달: 생성된 객체를 빈 저장소에 등록하기 직전에 빈 후처리기에 전달
  3. 후 처리 작업: 빈 후처리기는 전달된 스프링 빈 객체를 조작하거나 다른 객체로 바꿔치기할 수 있다.
  4. 등록: 빈 후처리기는 빈을 반환한다. 전달된 빈을 그대로 반환하면 해당 빈이 등록되고, 바꿔치기 하면 다른 객체가 등록된다.
image

출처: 김영한 지식공유자의 스프링 핵심 원리 고급편

728x90
Comments