[SPRING] prototype으로 등록 된 bean에서 destroy-method가 호출되지 않습니다.
SPRINGprototype으로 등록 된 bean에서 destroy-method가 호출되지 않습니다.
bean을 singleton으로 등록하고 init-method와 destroy-method를 정의했다. 나는 빈에 접근 중이며 두 가지 메소드에 대한 호출을 볼 수있다. 그러나 프로토 타입으로 범위를 변경하면 destroy-method가 호출되지 않습니다.
나는 이것에 대한 근거를 얻지 못하고있다.
해결법
-
==============================
1.설명서를 읽으십시오.
설명서를 읽으십시오.
그리고 그것은 매우 논리적입니다. 애플리케이션이 10 밀리 초마다 프로토 타입 빈의 새로운 인스턴스를 요청하고, 빈을 사용하여 무언가를 한 다음, 범위를 벗어나게 할 수 있습니다. 응용 프로그램이 종료 될 때 Spring이 파괴해야한다면, 생성 된 모든 프로토 타입 bean에 대한 참조를 유지해야합니다. 따라서 이들을 가비지 수집하여 메모리 누수를 일으킬 수 있습니다.
from https://stackoverflow.com/questions/23442512/destroy-method-not-invoked-on-beans-registered-as-prototype by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] applicationcontext.getbean vs @configurable 사용의 이점 [닫힘] (0) | 2019.05.03 |
---|---|
[SPRING] 버전 스프링 배치와 cloudera hadoop 사이의 비 호환성 (0) | 2019.05.03 |
[SPRING] Spring 데이터 설정 - hibernate.properties를 찾을 수 없음 (0) | 2019.05.03 |
[SPRING] spring-mongo를 사용하여 mongodb 연결을 닫는 올바른 방법은 무엇입니까? (0) | 2019.05.03 |
[SPRING] Spring 세션을 사용할 때의 사용자 정의 쿠키 이름 (0) | 2019.05.03 |