Spring #2 - ApplicationContext

업데이트:

IoC 컨테이너와 빈

Ioc 컨테이너 2부 : ApplicationContext와 다양한 빈 설정 방법

스프링 빈 설정파일 만들기

  • 기존의 xml파일을 이용한 빈 등록방식은 복잡하고 사용자 편의성이 좋지 않았다.
  • 그래서 등장한 것이 @ComponentScan이다. (@Annotation 사용)

Java 설정파일로 빈 등록 및 의존성 주입 방법

  • @Component (@Service, @Repository 등) 활용

  • Configuration Class 생성 후 하나하나 빈으로 등록 후 엮기

    @Configuration
    public class ApplicationConfig {
      
        @Bean
        public BookRepository bookRepository() {
            return new BookRepository();
        }
      
        @Bean
        public BookService bookService(BookRepository bookRepository) {
            BookService bookService = new BookService();
            bookService.setBookRepository(bookRepository);
            return bookService;
        }
    }
    
  • BookRepository와 같이 빈으로만 등록 후 BookService 클래스에서 @Autowired 로 엮을 수 있다.

  • @ComponentScan 이용

    @Configuration
    @ComponentScan(basePackageClasses = SpringStudyApplication.class)
    public class ApplicationConfig {
          
    }
    
  • MainApplicationClass@SpringBootApplication 사용 -> 내부에 Configuration & ComponentScan 포함하고 있다.

    • Configuration & ComponentScanSpringApplicationContext에 관한 내용이다.

댓글남기기