스프링 컨테이너 2

[스프링] 스프링 핵심 원리 기본편 정리: 5. 싱글톤 컨테이너

싱글톤 컨테이너 웹 애플리케이션과 싱글톤 스프링은 태생이 기업용 온라인 서비스 기술을 지원하기 위해 탄생한 기술이다. 대부분의 스프링 애플리케이션은 웹 애플리케이션이다. 물론, 웹이 아닌 애플리케이션 개발도 얼마든지 가능하다. 웹 애플리케이션에서는 보통 수많은 고객이 동시에 요청을 한다. 그림은 클라이언트 A, B, C 세 명이 스프링 컨테이너인 DI 컨테이너에 있는 memberService를 동시에 요청하는 모습이다. 이 경우, 요청을 할 때마다 새로운 memberService 객체가 반환되게 된다. 지금은 클라이언트가 세 명밖에 없지만, 실제 웹 애플리케이션의 경우 수많은 고객이 동시에 요청을 하기 때문에 문제가 발생하게 된다. 실제 코드를 통해 해당 상황이 일어나는 경우에 대해 살펴보자. 스프링 없..

Spring 2023.08.30

[스프링] 스프링 핵심 원리 기본편 정리: 4. 스프링 컨테이너와 스프링 빈

스프링 컨테이너와 스프링 빈 스프링 컨테이너 생성 스프링 컨테이너가 생성되는 과정을 알아보기 전에 먼저 기본적인 개념을 알고 넘어가도록 하자. 스프링 컨테이너를 생성하는 코드는 다음과 같다. // 스프링 컨테이너 생성 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); ApplicationContext ApplicationContext를 스프링 컨테이너라고 한다. ApplicationContext는 인터페이스이다. 스프링 컨테이너는 XML을 기반으로 만들 수도 있고, 애노테이션 기반의 자바 설정 클래스로 만들 수도 있다. 이전에 AppConfig를 사용했던 방식이 애노테이션 기반의 자..

Spring 2023.08.27