Spring Boot 只是Spring扩展,为使用Spring提供了一些快捷的办法。
Spring Boot提供如下三种方式使Spring使用更便捷:
1.自动配置
Spring Boot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring配置应该用哪个,不该用哪个。该过程是SpringBoot自动完成的。
2.起步依赖
起步依赖本质上是一个Maven项目对象模型(ProjectObject Model,POM),定义了对其他库的传递依赖这些东西加在一起即支持某项功能。
简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。
起步依赖有效的避免了部分依赖不同版本之间的不兼容的问题,但是未完全规避,部分自己引入的依赖仍然需要考虑版本兼容问题。
3.辅助功能
提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等。
Spring Boot配置生效顺序
Springboot程序启动时,会从以下位置加载配置文件:
1. file:/config/: 当前项目下的/config目录下
2. file:./当前项目的根目录
3. classpath:/config/: classpath的/config目录
4. classpath:/: classpath的根目录
加载顺序为上文的排列顺序,高优先级配置的属性会生效。
此外还可能有外部启动配置,例如在启动jar包的时候,可能会用如下语句指定jar包的启动端口。
java -jar xxx.jar --server.port = 8081
Spring Boot的自动配置
Condition
该注解可用于自定义spring IOC注入Bean时的条件判断。
可通过自定义注解的方式进行Condition的集成,并重写matches方法并行自定义判断。
但是Spring Boot提供了很多与Condition相关的注解,一般不需要自己写。
一般自带的ConditionOn...的注解可以进行在指定条件下才加载Bean。
Spring Boot的监听事件
。。。。