您的位置:首页 > 移动开发

第二十三章 SpringBoot @SpringBootApplication注解源码解析

2017-02-23 15:22 976 查看
@SpringBootApplication是SpringBoot的核心注解,它是一个组合注解,源码如下

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

Class<?>[] exclude() default {};

String[] excludeName() default {};

@AliasFor(annotation = ComponentScan.class, attribute = "basePackages")
String[] scanBasePackages() default {};

@AliasFor(annotation = ComponentScan.class, attribute = "basePackageClasses")
Class<?>[] scanBasePackageClasses() default {};

}


@SpringBootApplication组合了@Configuration,@EnableAutoConfiguration以及@ComponentScan,若不使用@SpringBootApplication注解,则可以在入口类上直接使用@Configuration,@EnableAutoConfiguration、@ComponentScan

禁用特定的自动配置

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: