Spring에서 ApplicationContext는 Spring 컨테이너를 의미하여, Spring Bean을 관리하는 핵심 인터페이스입니다.
즉, Spring에서 객체(Bean)의 생성, 초기화, 의존성 주입(DI), 생명주기 관리 등을 담당합니다.
1. ApplicaionContext 의 역할
Spring 애플리케이션에서 중앙 컨테이너 역할을 하며 다음 기능을 제공합니다.
Bean 등록 및 관리
- @Component, @Service, @Repository, @Controller, @Bean 등을 사용하여 Spring Bean을 관리
- 싱글톤(Singleton) 스코프를 기본적으로 유지
의존성 주입(DI, Dependency Injection)
- @Autowired, @Qualifier, @Inject 등을 사용하여 자동으로 객체를 주입
- 생성자 주입, 필드 주입, 메서드 주입 등을 지원
환경설정 관리
- application.properties 또는 application.yml 의 환경설정을 불러올 수 있음
이벤트(Event) 관리
- ApplicationEvent 및 ApplicationListener 를 사용하여 이벤트 기반 프로그래밍 가능
국제화(I18n)
- 다국어 메시지 번역을 위한 MessageSource 제공
리소스(Resource) 관리
- 파일 시스템, 클래스패스, URL 등을 통해 리소스를 로드 가능(ResourceLoader 사용)
ApplicationContext는 Spring 컨테이너의 핵심 인터페이스
- Bean의 생성, 관리, 의존성 주입(DI), 생명주기 관리 역할
- XML, Java, Annotation 기반 설정 지원
- AOP, 트랜잭션 관리, 이벤트, 국제화 지원
Self-Invocation 문제 해결 가능
- 같은 클래스에서 @Transactional이 적용되지 않는 문제 해결 가능
- ApplicationContext.getBean(클래스명.class)을 사용하여 프록시 객체를 가져와서 실행하면 해결 가능
'Spring' 카테고리의 다른 글
Spring에서 ApplicationContext는 Spring 컨테이너를 의미하여, Spring Bean을 관리하는 핵심 인터페이스입니다.
즉, Spring에서 객체(Bean)의 생성, 초기화, 의존성 주입(DI), 생명주기 관리 등을 담당합니다.
1. ApplicaionContext 의 역할
Spring 애플리케이션에서 중앙 컨테이너 역할을 하며 다음 기능을 제공합니다.
Bean 등록 및 관리
- @Component, @Service, @Repository, @Controller, @Bean 등을 사용하여 Spring Bean을 관리
- 싱글톤(Singleton) 스코프를 기본적으로 유지
의존성 주입(DI, Dependency Injection)
- @Autowired, @Qualifier, @Inject 등을 사용하여 자동으로 객체를 주입
- 생성자 주입, 필드 주입, 메서드 주입 등을 지원
환경설정 관리
- application.properties 또는 application.yml 의 환경설정을 불러올 수 있음
이벤트(Event) 관리
- ApplicationEvent 및 ApplicationListener 를 사용하여 이벤트 기반 프로그래밍 가능
국제화(I18n)
- 다국어 메시지 번역을 위한 MessageSource 제공
리소스(Resource) 관리
- 파일 시스템, 클래스패스, URL 등을 통해 리소스를 로드 가능(ResourceLoader 사용)
ApplicationContext는 Spring 컨테이너의 핵심 인터페이스
- Bean의 생성, 관리, 의존성 주입(DI), 생명주기 관리 역할
- XML, Java, Annotation 기반 설정 지원
- AOP, 트랜잭션 관리, 이벤트, 국제화 지원
Self-Invocation 문제 해결 가능
- 같은 클래스에서 @Transactional이 적용되지 않는 문제 해결 가능
- ApplicationContext.getBean(클래스명.class)을 사용하여 프록시 객체를 가져와서 실행하면 해결 가능