스프링 빈 생명주기

Ahn yi·2022년 10월 7일
0

spring

목록 보기
8/11

스프링 빈

  • 스프링 빈은 객체 생성 뒤, 의존관계 주입이 끝난 다음에 데이터를 사용할 수 있는 준비가 끝난다.
  • 스프링은 의존관계 주입 및 컨테이너 종료 때, 시점을 알려주는 기능을 제공한다.

스프링 빈 라이프 사이클

스프링 컨테이너 생성 -> 스프링 빈 생성 -> 의존관계 주입 -> 초기화 콜백 -> 사용 -> 소멸 전 콜백

스프링이 지원하는 빈 생명주기 콜백 방법

  1. 인터페이스
  2. 설정 정보에 초기화 메소드, 종료 메소드 지정
  3. 어노테이션
  • 인터페이스
    • 인터페이스 InitializingBean, DisposableBean
    • 초기화, 소멸 메소드 이름 변경이 불가능하다.
    • 코드 수정이 불가능한 외부 라이브러리에 적용할 수 없다.
    • 스프링 인터페이스로 스프링에 의존한다.
  • 빈 등록 초기화, 소멸 메소드
    • 메소드 이름을 자유롭게 줄 수 있다.
    • 스프링에 의존하지 않는다.
    • 코드 수정이 불가능한 외부 라이브러리에도 적용할 수 있다.
  • 어노테이션 (@PostConstruct, @PreDestroy)
    • 스프링에서 권장하는 방법이다.
    • JSR-250라는 자바 표준으로, 스프링 외의 다른 컨테이너에서도 동작한다.
    • 외부 라이브러이에는 적용하지 못하지만, 그럴 경우 @Bean의 기능을 사용한다.
      • @Bean의 initMethod, destroyMethod 사용
profile
소통을 잘하고싶은 백엔드 개발자

0개의 댓글