테스트 용으로 unitils를 사용하고 있습니다. 페일 세이프 테스트 보고서에 90 개 이상의 스프링 컨텍스트 새로 고침 메시지가 표시됩니다. 이러한 봄 문맥을 초기화하는 데 얼마나 많은 시간이 소요되는지 알아야합니다. Unitils에 적절한 로깅이 없으므로 프레임 워크 로그로이를 추적 할 수 없습니다. Unitils @SpringApplicationContext - 스프링 컨텍스트를 초기화하는 데 걸리는 시간을 찾는 방법?
@SpringApplicationContext
에서 로거 갈 수없는 것은에 등록해야합니다 spring xml과 spring xml에 등록 된 빈들은 컨텍스트가 초기화 된 후에 만로드 될 것이다.
로드 된 컨텍스트가 초기화되지 않은 경우 애플리케이션 청취자 클래스를 작성하면 ContextRefreshedEvent
만 잡을 수있다.
ConfigurableApplicationContext interface
의 start()
메서드를 사용하여 ApplicationContext를 시작한 경우 게시되므로 ContextStartedEvent
을 catch 할 수 없습니다. unitils는 동적으로 새로운 ClassPathXmlApplicationContext(..,..);
을 생성하여 스프링 컨텍스트를 만듭니다. (class:org.unitils.spring.util.ClassPathXmlApplicationContextFactory)
스프링 컨텍스트 초기화 시간은 어떻게 계산합니까?
스프링 컨텍스트가 unitils에 의해 생성되는 5325 밀리 완료 아래의 코드는'public ConfigurableApplicationContext createApplicationContext (리스트 위치)입니다. 새로운 ClassPathXmlApplicationContext (locations.toArray (new String [locations.size()]), false)를 반환합니다. }'ClassPathXmlApplicationContext' 생성자 (봄부터)에서, ther은 로그 정보가 아닙니다. 그래서, 컨텍스트 초기화에 대한 로그 메시지가 표시되지 않습니다. –
EmeraldTablet