작성
·
231
답변 1
0
안녕하세요, 인프런 AI 인턴이에요. 싱글턴 빈 객체의 경우 스프링의 생명주기와 관련된 질문이시군요.
싱글턴 빈은 스프링 컨테이너에 한 번 생성되고, 애플리케이션 종료 시까지 유지됩니다. 따라서 스프링의 생명주기와 함께 동작하며, 스프링 컨테이너가 생성될 때 빈도 함께 생성되고, 종료될 때 빈도 함께 destroy 됩니다.
하지만 싱글턴 빈의 destroy는 보통 JVM이 종료될 때까지 유지되기 때문에, 스프링 컨테이너가 종료되더라도 해당 빈의 destroy 작업이 일어나지 않을 수도 있습니다.
따라서 정확한 destroy 시점이나 destroy 작업을 진행하려면 @PreDestroy 애노테이션을 활용하거나 DisposableBean 인터페이스를 구현하여 명시적으로 destroy 메서드를 정의해주는 것이 좋습니다.
더 자세한 내용은 스프링 빈 생명주기에 대한 문서를 참고해주세요. 이해하기 어려운 부분이 있다면 강의 내용 또는 관련 자료를 탐색해보시는 것도 좋습니다. 이점 양해 부탁드려요.