@SpringBootApplication
每一个Spring Boot项目都有一个名为*Application的入口类,入口类中有个main方法,在main方法中使用:
SpringApplication.run(DemoApplication.class, args);
启动Spring Boot应用。
上面是@SpringBootApplication的源码
可以得知@SpringBootApplication是一个组合注解,该注解主要组合了以下几个注解
- @SpringBootConfiguration:这是Spring Boot项目的配置注解,Spring Boot项目中推荐使用@ SpringBootConfiguration替代@Configuration
- @EnableAutoConfiguration:启用自动配置,该注解会使Spring Boot根据项目中依赖的jar包自动配置项目的配置项
- @ComponentScan:默认扫描@SpringBootApplication所在类的同级目录以及它的子目录
关闭特定的自动配置
使用@SpringBootApplication的exclude参数,例如:@SpringBootApplication(exclude = {RedisAutoConfiguration.class})
starter pom
Spring Boot提高了简化开发绝大多数场景的starter pom,只要使用了应用场景所需要的starter pom,相关的配置就可以免除,就可以得到Spring Boot为我们提供的自动配置的Bean
特殊情况下使用xml
虽然Spring Boot可以实现无xml,但是有些特殊情况下,又需要使用xml配置文件。这个时候可以使用@ImportResource来加载xml配置文件。例如:@ImportResource({"classpath:some.xml","classpath:other.xml"})