728x90
반응형
728x90
반응형
Bean Scope 스프링은 빈이라는 개념으로 객체를 만들고 관리해준다. 스프링 빈은 기본적으로 싱글톤 스코프로 생성되기에, 스프링 컨테이너의 시작과 함께 생성되어 스프링 컨테이너가 종료될 때까지 유지된다고 알고 있다. 이렇게, 스프링 빈이 존재할 수 있는 범위를 빈 스코프라고 한다. Bean Scope종류 singleton : 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. prototype : 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더이상 관리하지 않는 짧은 범위의 스코프이다. request : 웹 요청이 들어오고 나갈때 까지 유지되는 스코프이다. session : 웹 세션이 생성되고 종료될 때까지 유지되는 스코프이다. applic..
스프링이란? 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크이다. Config 최근에는 XML 파일 대신 자바 기반의 Configuration을 사용하는 추세이다. @Configuration : 각 빈이 스프링 애플리케이션 컨텍스트에 제공하는 구성 클래스라는 것을 스프링에게 알려주는 역할 @Bean : 각 메서드에서 반환되는 객체가 애플리케이션 컨텍스트의 빈으로 추가된다. 각 Bean의 ID = 해당 Bean을 반환하는 메서드의 이름 Bean 애플리케이션의 핵심을 이루는 객체이며, Spring IoC Container에 의해 인스턴스화, 관리, 생성된다. Spring Bean Life Cycle Bean Scope singleton 기본적으로 모든 Bean은 Singleton Spring IoC Co..
스프링 컨테이너 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); MemberService memberService = applicationContext.getBean("memberService", MemberService.class); ApplicationContext를 스프링 컨테이너라 한다. 기존에는 AppConfig를 통해 직접 객체를 생성하고 DI 했지만, 이젠 스프링 컨테이너를 사용한다. 스프링 컨테이너를 생성할 때는 구성 정보를 지정해주어야 한다. (여기서는 AppConfig.class) @Configuration public class AppConfig { @Bean ..