Spring 의 Application Context 는 Spring 에서 설정 정보의 제공을 위한 핵심 인터페이스이다.
런타임 이전에 로드가 되며, 런타임에서 일반적으로 Read-Only 로 구성되지만, 사용에 따라 런타임에 Re-load 하는 경우가 종종 있다.
프로젝트의 설정 작업을 하는 클래스 들의 경우 ApplicationContextAware 등의 인터페이스를 상속해서 ApplicationContext 에 접근하곤 한다.
ApplicationContext 를 이용하면 다음과 같은 작업이 가능하다.
- Application 에서 Component 로 갖고 있는 Bean 에 대해 접근이 가능하다. (즉, Bean factory 를 제공한다)
- Resource 를 직접 가져올 수 있다. 리플렉션과 유사하게 명시된 이름을 주로 사용한다.
- 이벤트를 직접 발행할 수 있으며 이벤트는 context 에 등록된 Listener 에 작용한다.
- 상속된 Context 컴포넌트들에 접근이 가능하다.
ApplicationContext 에 접근하는 클래스는 다음과 같이 만들 수 있다.
위와 같이 ApplicationContextAware 를 구현하면, ApplicationContext 에 접근이 가능하며, 클래스를 컴포넌트화 시켜서 프로젝트에 광범위하게 사용하곤 한다.
'Server > Spring' 카테고리의 다른 글
Spring Bean Scope 에 대한 정리 (0) | 2018.11.27 |
---|---|
Spring 의 Bean 들의 Thread safety 에 대한 정리 (0) | 2018.11.21 |
Spring PSA(Portable Service Abstraction)의 개념 (0) | 2018.09.09 |
Spring Framework 의 기본동작 및 Dispatcher Servlet (0) | 2018.09.09 |
Spring Framework 의 특징과 버전별 주요 Feature 들 (0) | 2018.08.23 |