@SpringBootApplication

//设置以后注解能够标记在哪里@Target(ElementType.TYPE)         //当注解标注的类编译以什么形式保留 RUNTIME会被JVM加载        @Retention(RetentionPolicy.RUNTIME)        //java doc会生成注解信息@Documented                //是否会被继承                @Inherited//标注在某个类上,示意这是一个SPring Boot的配置类@SpringBootConfiguration//配置类上来标注这个注解@Configuration//开启主动配置性能,会帮咱们主动去加载@EnableAutoConfiguration//扫描包 相当于在spring.xml 配置中<context:comonent-scan> //然而并没有指定basepackage,如果没有指定spring底层会主动扫描以后配置类所在的包@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),        @Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })//spring boot对外提供的扩大类,能够供咱们去依照咱们的形式进行排除TypeExcludeFilter//排除所有配置类并且是主动配置类外面的其中一个AutoConfigurationExcludeFilter

@EnableAutoConfiguration

@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited//将以后配置类所在的包保留在BasePackages的Bean中。供Spring外部应用@AutoConfigurationPackage@Import(AutoConfigurationImportSelector.class)