Free Lines Arrow
본문 바로가기
Spring/spring 기초 스터디

[Spring] Bean 생명주기

by skahn1215 2021. 5. 26.
728x90
반응형

빈 생명주기

 

스프링빈 생명 주기

1. 스프링빈은 객체를 생성한다.
2. 의존관계 주입을 한다.
3. 이후 필요한 데이터를 사용 할 수 있는 준비가 된다.


Point

  • 따라서 초기화 작업은 의존관계 주입이 모두 완료되고 난 다음에 호출해야한다.

 

주입완료 시점?

  • 어떻게 주입완료 시점을 알 수 있을까?
  • 스프링은 의존관계 주입이 완료 되면 스프링 빈에게 콜백 메서드를 제공함.
  • 초기화 시점을 알려 주는 다양한 기능을 제공한다.

 

 

 

스프링 빈의 이벤트 라이프사이클

 



초기화 콜백

빈이 생성되고, 빈의 의존관계 주입이 완료된 후 호출

 

소멸전 콜백

빈이 소멸되기 직전에 호출

 

 

생성자와 초기화를 어떻게 구별 하고 사용할까?

생성자
정의: 필수 정보를 받고 메모리를 할당해서 객체를 생성하는 책임을 가진다.
내부 값 변경등 작은 작업

초기화
정의: 생성된 값을 활용해서 외부 커넥션을 연결하는등 무거운 동작을 수행한다.
외부 커넥션 연결및 무거운작업

 

 

콜백을 이용하는 방법 3가지

  • 인터페이스(InitializingBean, DisposableBean)
  • 설정 정보에 초기화 메서드, 종료메서드 지정
  • @PostConstruct, @PreDestory
728x90
반응형

'Spring > spring 기초 스터디' 카테고리의 다른 글

[Spring] Bean Scope  (0) 2021.06.01
[Spring] Bean Callback  (0) 2021.05.29
[Spring] 조회한 빈을 선택해서 사용할때  (0) 2021.05.24
[Spring] 조회된 빈이 2개일때 No qualifying bean  (0) 2021.05.23
[Spring] Lombok  (0) 2021.05.23

댓글