447 words
2 minutes
[Spring]Applcation Context와 관련 컨셉들
2025-08-19
2026-01-09

Overview#

01. BeanFactory#

  • BeanFactory: Spring IoC 컨테이너의 핵심 인터페이스
  • Bean 생성/주입 관리 책임을 가짐

02. ApplicationContext#

  • BeanFactory + 확장기능을 가진 컨테이너
  • 메시지 관리, 이벤트 시스템, 환경설정 및 의 추가적인 책임을 가짐

AutowireCapableBeanFactory#

  • 외부 객체에도 의존성 주입을 해줄 수 있는 BeanFactory 확장판
  • Quartz로 생성된 Job과 같은 외부 객체에도 스프링 Bean을 주입할 수 있음 -> Service, Repository등을 사용가능
@Component
public class MyJob implements Job {
@Autowired
private MyService myService;
@Override
public void execute(JobExecutionContext context) {
myService.doSomething(); // 스프링 서비스 정상 호출
}
}

Concept

  • BeanFactory : Spring Ioc 컨테이너의 핵심 인터페이스 , Bean 생성 및 생명주기 관리 책임
  • IOC Container : Bean객체의 생성, 의존성 주입 및 수명주기 관리를 대신해주는 팩토리 + 관리자이다.
  • ApplicationContext : BeanFactory + 확장기능을 가진 컨테이너. 기본적으로 BeanFactory + 메시지 관리 + 이벤트 시스템 + 환경설정및 리소스 접근을 포함한 스프링 어플리케이션의 런타임 환경이다.
  • AutowireCapableBeanFactory : 외부 객체에도 의존성 주입을 해줄 수 있는 BeanFactory 확장판

TakeAways#


Key_Takeaways

  • ApplicationContext는 BeanFactory + 메시지 관리 + 이벤트 시스템 + 환경설정및 리소스 접근을 포함한 스프링 어플리케이션의 런타임 환경이다.
  • IOC Container라는 것은 기본적으로 Bean객체의 생성, 의존성 주입 및 수명주기 관리를 대신해주는 팩토리 + 관리자이다.
  • BeanFactory가 단순 IOC Container라면 ApplcationContext는 이에 더해 이벤트 발생, 국제화 지원, 환경정보 제공, 리소스 로딩, AOP 트랜잭션 지원등 의 추가적인 책임을 가진다.

References#

[Spring]Applcation Context와 관련 컨셉들
https://yjinheon.netlify.app/posts/03be/00frameworks/spring/basics/spring-application-context/
Author
Datamind
Published at
2025-08-19
License
CC BY-NC-SA 4.0