1)版本锁定
如spring-boot-starter-parent中,指定了版本,子module中不需要再次指定版本
<dependencyManagement></dependencyManagement>
2)依赖传递
如spring-boot-starter-web中
SpringBoot 是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认的话,就可以使用application.properties 或者 application.yml (application.yaml)进行配置。
server.port=8080
server: port: 8080
如果resource目录下同时存在以下配置文件:
application.properties
application.yml
application.yaml
则优先级application.properties 最高,其次是application.yml,最后是application.yaml。即若3个配置文件存在同一个键值对,实际上取的值是application.properties文件中的;他们是叠加读取的。
YAML全称是YAML Ain’t Markup Language,意思是yaml不是一种标记性语言。
加上下面这依赖之后,自己写的类上的属性就能在配置文件里有提示了。
resource目录下是属于第4种,在classpath的根目录下。
多个文件都会加载,形成互补的配置;同名变量生效优先级1>2>3>4。
说明:1和2是不会打进jar包文件里的,因为他不符合maven结构
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
17种外部配置方式