봄에 ApplicationContext 계층 구조를 이해하려고합니다. Spring ApplicationContext 계층 구조를 사용하는 이유는 무엇입니까?
나는 다음과 같은- ApplicationContext 중이 개 1 이상의 부모 의 ApplicationContext를 가질 수 없습니다 배웠습니다.
- 주어진 ApplicationContext가 빈을 해석 할 수없는 경우, 해결 방법은 부모에게 전달됩니다.
- 의 상위이며 ApplicationContext는 해당 생성자에 으로 지정됩니다.
단일 ApplicationContext 대신 ApplicationContext 계층 구조를 사용해야하는 경우를 알고 싶습니다.
Google에서 얻을 수있는 최선은 this입니다. 그리고 내가 이해할 수있는 것은, 애플리케이션이 다양한 레이어에 정의 된 많은 수의 bean을 가지고 있다면, 각 레이어가 고유 한 ApplicationContext를 갖는 것이 이점이된다는 것입니다. 이해하지 못하는 것은 무엇을하는 것의 이점이며, 그 이익은 어떻게 달성되는 것입니까?
TIA, 비제이
더 자세히 읽으면서 다음을 이해했습니다 (스카프 맨은 이미이 부분을 나타 냈습니다). 각 Spring MVC 웹 애플리케이션은 각 DispatcherServlet에 대해 하나의 루트 애플리케이션 컨텍스트와 하나의 서블릿 애플리케이션 컨텍스트를 가지고 있습니다. 루트 응용 프로그램 컨텍스트는 각 서블릿 응용 프로그램 컨텍스트의 부모입니다. "contextConfigLocation"(web.xml의 context-param)에 정의 된 bean은 루트 응용 프로그램 컨텍스트로로드됩니다. -servlet.xml의 빈은 서블릿 응용 프로그램 컨텍스트에로드됩니다. EAR에 여러 웹 응용 프로그램이있는 경우 EAR 수준 응용 프로그램 컨텍스트는 EAR에서 각 웹 응용 프로그램의 루트 컨텍스트를 상위로 지정할 수 있습니다. –
@ user636334 : 예, 그게 전부입니다. – skaffman