[SPRING] 스프링 ApplicationContext를 닫는 방법?
SPRING스프링 ApplicationContext를 닫는 방법?
신청이 끝나면 봄의 문맥을 닫고 싶습니다. 관련 코드에 ApplicationContext 참조가 있지만 close 메소드를 찾을 수 없습니다.
해결법
-
==============================
1.close () 메소드를 정의하는 ConfigurableApplicationContext로 ApplicationContext를 다운 캐스트합니다.
close () 메소드를 정의하는 ConfigurableApplicationContext로 ApplicationContext를 다운 캐스트합니다.
((ConfigurableApplicationContext)appCtx).close();
-
==============================
2.다음과 같이 JVM에 종료 훅을 등록해야합니다.
다음과 같이 JVM에 종료 훅을 등록해야합니다.
((AbstractApplicationContext)appCtx).registerShutdownHook();
자세한 내용은 다음을 참조하십시오 : Spring Manual : 3.6.1.6 Spring IoC 컨테이너를 웹 애플리케이션이 아닌 다른 시스템에서 정상적으로 종료하기
-
==============================
3.아래처럼 컨텍스트를 초기화하면
아래처럼 컨텍스트를 초기화하면
ApplicationContext context = new ClassPathXmlApplicationContext(beansXML);
이와 같은 깨끗한 컨텍스트
((ClassPathXmlApplicationContext) context).close();
-
==============================
4.Java SE 7 이상이 닫히지 않으면 try-with-resources를 사용하여 명령문의 끝에 각 리소스가 닫히도록하십시오.
Java SE 7 이상이 닫히지 않으면 try-with-resources를 사용하여 명령문의 끝에 각 리소스가 닫히도록하십시오.
try(final AbstractApplicationContext applicationContext = new ClassPathXmlApplicationContext(new String[]{"classpath*:META-INF/spring/*.xml" })) { //write your code }
-
==============================
5.ApplicationContext 개체를 닫는 단계
ApplicationContext 개체를 닫는 단계
예:
ApplicationContext context = new ClassPathXmlApplicationContext("mybeans.xml"); ((ConfigurableApplicationContext)context ).close();
from https://stackoverflow.com/questions/14423980/how-to-close-a-spring-applicationcontext by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring HATEOAS 임베디드 리소스 지원 (0) | 2019.01.26 |
---|---|
[SPRING] 스프링 3 MVC 애플리케이션을위한 maven 2 아키타 입을 가지고 있습니까? (0) | 2019.01.26 |
[SPRING] intellij가 autowired 저장소에 대해 발견 된 유형의 빈을 잘못 말함 (0) | 2019.01.26 |
[SPRING] Autowiring으로 Spring 통합 테스트가 느립니다. (0) | 2019.01.26 |
[SPRING] HibernateJpaVendorAdapter 문제 대신 EclipseLinkJpaVendorAdapter (0) | 2019.01.26 |