Repository navigation
Bean 생명주기 #44
paiwhy
started this conversation in
Spring Core
Replies: 1 comment
1. Bean의 생명주기는 어떤 단계로 이루어져 있나요?Spring Bean 기준, 일반적인 생명주기는 다음 순서이다.
단, prototype 범위의 Bean은 생성과 초기화까지만 컨테이너가 관리하며, 소멸 단계는 자동으로 처리하지 않는다. 2. 생명주기 콜백(초기화/소멸 메서드)은 어떤 방식으로 등록하고 실행할 수 있나요?
예를 들어 Bean 클래스의 메서드에 한 Bean에 여러 방식을 함께 지정하면 실행 순서는 다음과 같다.
3. Bean의 스코프(싱글턴, 프로토타입 등)는 생명주기에 어떤 영향을 미치나요?Bean 스코프는 스프링이 Bean 객체를 몇 개 만들고, 언제까지 유지할 지 정하는 설정이다. 이에 따라 생명주기도 달라진다.
초기화 콜백은 위 스코프 모두에서 Bean이 생성될 때 생성된다. 핵심 예외는 prototype의 소멸 콜백이다. 스프링은 prototype Bean을 생성·초기화 해 전달한 뒤에는 그 인스턴스를 계속 관리하지 않는다. 또한 singleton에 prototype Bean을 일반적인 방식으로 주입하면, singleton을 만들 때 생성된 prototype 인스턴스 하나가 주입된다. 사용할 때마다 새 인스턴스가 필요하다면 그때마다 Bean을 조회하는 방식을 써야한다. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
📆 일자: 26년 9월 27일(일)
오늘의 질문
스프링에서 객체(Bean)는 개발자가 직접 생성하고 관리하는 것이 아니라 컨테이너가 대신 생성, 초기화, 소멸까지 책임집니다.
Bean이 정확히 어떤 단계를 거쳐 생성되고 사라지는지 이해하고 그 과정에 개발자가 어떻게 개입할 수 있는지 알아보기 위해 발제했습니다.
1. Bean의 생명주기는 어떤 단계로 이루어져 있나요?
2. 생명주기 콜백(초기화/소멸 메서드)은 어떤 방식으로 등록하고 실행할 수 있나요?
3. Bean의 스코프(싱글턴, 프로토타입 등)는 생명주기에 어떤 영향을 미치나요?
All reactions