본문 바로가기

Singleton Registry = ApplicationContext의 또 다른 이름 BeanFactory = ApplicationContext = IoC Container = Spring Container 가 생성/관리하는 빈 오브젝트는 특별한 설정이 없는 한, (빈의 scope이 prototype scope, request scope, session scope 이 아닌 이상..)싱글톤 오브젝트이다. 이러한 이유로 Spring Container을 Sigleton Registry 라고도 부른다. 한 가지 기억해둘 것은 ..빈으로 등록되는 클래스가 디자인 패턴의 하나인 Singleton pattern을 적용한 클래스가 아니다라는 점빈으로 등록되는 클래스는 (private 생성자, public static getInstance() 메소드등이 없는) 평범한 클래스이다. 이 평범한 클래스를 빈 .. 더보기
Annotations 빈설정용 (자바코드로 등록할 빈을 설정) @Configuration * 클래스에 명시되며, 이 클래스는 스프링에서 클래스의 탈을 쓴 설정정보가 된다. * 스프링의 빈팩토리(ApplicationContext)가 빈을 생성하고 관계설정하는데 이 클래스를 설정정보로 사용하도록 알려주자. * xml 설정파일의 라는 root element와 그 역할이 같다. @Bean * 메소드에 명시되며, * 이 메소드는 스프링의 빈팩토리가 빈 객체를 생성하는데 사용된다. * 메소드 이름이 곧 빈의 이름이 된다 * xml 설정파일의 element와 그 역할이 같다. 빈등록용 (스캐너에 의해 자동으로 등록) @Component (@Controller, @Service, @Repository) * 빈스캐너에 의해 빈으로 등록된다 .. 더보기
IoC (Inversion of Control) 일반 제어 : 1. 내가 만든 코드가 라이브러리를 능동적으로 실행시킨다.2. main함수에서 시작한 내 코드가 어플리케이션의 모든 흐름을 제어한다. 역전된 제어 : 1. 프레임워크가 내가 만든 코드/클래스/어플리케이션을 실행시킨다.2. 내가 Container/Context에 설정해 두면, 프레임워크가 그 설정에 맞추어 코드를 제어한다. 간단히 정리해 보면,내가 만든 코드의 제어를 프레임워크에 맡기는 것.. 이 것이 "Inversion of Control" 이다 더보기