복붙노트

[SPRING] @SpringBootConfiguration과 @Configuration의 차이점

SPRING

@SpringBootConfiguration과 @Configuration의 차이점

@SpringBootConfiguration과 @Configuration의 차이점은 무엇입니까? 그것에 대한 자세한 내용을 찾을 수 없습니다.

해결법

  1. ==============================

    1.Spring Boot Document (아래의 계층 구조)에 따르면 @Configuration은 @SpringBootConfiguration의 일부이며 궁극적으로 @SpringBootApplication을가집니다

    Spring Boot Document (아래의 계층 구조)에 따르면 @Configuration은 @SpringBootConfiguration의 일부이며 궁극적으로 @SpringBootApplication을가집니다

    @SpringBootApplication
    -------> @SpringBootConfiguration
           -------> @Configuration
    

    @SpringBootApplication

    Target(ElementType.TYPE)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @Inherited
    @SpringBootConfiguration
    @EnableAutoConfiguration
    @ComponentScan(excludeFilters = {
            @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
            @Filter(type = FilterType.CUSTOM,
                    classes = AutoConfigurationExcludeFilter.class) })
    public @interface SpringBootApplication {
    ...}
    

    @SpringBootConfiguration

    @Target(ElementType.TYPE)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @Configuration
    public @interface SpringBootConfiguration {
    
    }
    

    @Configuration

        @Target(ElementType.TYPE)
        @Retention(RetentionPolicy.RUNTIME)
        @Documented
        @Component
        public @interface Configuration {
    }
    
  2. ==============================

    2.SpringBootConfiguration

    SpringBootConfiguration

    출처

    SpringBootConfiguration에 관한 문서

  3. from https://stackoverflow.com/questions/56910260/difference-between-springbootconfiguration-vs-configuration by cc-by-sa and MIT license