注解
@SpringBootApplication
:开启了Spring的组件扫描和Spring Boot的自动配置功能,有三个注解组合
- Spring的
@Configuration
:表明该类使用Spring基于Java的配置 - Spring的
的@ComponentScan
:启动组件扫描,使得所写的Web控制器类和其他组件被自动发现并注册为Spring应用程序上下文里的Bean - Spring Boot的
@EnableAutoConfiguration
:也被称为@Abracadabra
,通过这行配置开启了Spring Boot的自动配置
- Spring的
@Controller
:组件扫描到后会自动将其注册为Spring应用程序上下文里的一个Bean@RequestMapping("/")
:将其中所有的处理器方法都映射到“/”这个URL路径上
初始化Spring Boot 项目
配置应用程序属性
application.properties
可以更细粒度地调整Spring Boot的自动配置。只要存在就自动加载
Maven构建Spring Boot项目
spring-boot-starter-parent
:Maven构建说明中将其作为上一级,这样就可以利用Maven的依赖管理功能,继承很多常用库的依赖版本,在声明依赖时就可以不用指定版本号了
起步依赖
- 起步依赖:一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某种功能。
- 在导入依赖时,不需要声明版本号,而是通过Spring Boot的起步依赖声明
- 覆盖起步依赖引入的传递依赖
自动配置
除了@SpringBootApplication
外不需要做其他配置,就可以运行一个完整的Spring应用程序
自定义配置
- 覆盖Spring Boot 的自动配置:
使用@Configuration
注解显式配置 - Spring Boot可以通过属性文件外置配置
- 如修改application.properties文件