springboot

[스프링 스터디] IoC 컨테이너와 빈

vmpo 2021. 4. 12. 21:43

스프링 ioc컨테이너와 빈의 개념 정리

 

IoC 컨테이너

  • ApplicationContext 객체를 구현한 객체
  • ApplicationContext = BeanFactory
  • 어노테이션, xml 등으로 사전에 정의된 객체들을 저장하고 있음( 해당 객체를 통해 접근 할 수 있다고 생각하면됨)

Bean(빈 객체)

  • IoC 컨테이너가 관리하는 객체
  • ApplicationContext (beanFactory)가 관리하는 객체
  • 싱글톤(하나만 생성), 프로토타입(사용할떄마다 생성)

 ApplicationContext 

  • 빈객체 설정방법
    • XML 설정
    • annotation 설정 1
      • @Component 어노테이션이 설정된 객체들을 모두 빈팩토리에 올림 
      • @Autowired 어노테이션이 붙어있는 변수들에 해당객체를 주입함.
    • annotation 설정 2
      • @Configuration 어노테이션이 붙은 클래스의 메소드에 @Bean 어노테이션을 추가해줌
      • @Configuration 어노테이션과 함께 @ComponentScan 를 붙여줌 (ex. @ComponentScan(basePackageClasses = 클래명.class))
      •  
  • @Configuration 어노테이션과 함께 @ComponentScan(basePackageClasses = 클래명.class) 를 붙여줌

 

 

LIST