首页 > 数据库 > 数据库开发技术 > SpringBoot中的配置文件你了解多少?

今天我们介绍下SpringBoot 的工程结构中 scr/main/resources目录,该目录是SpringBoot的配置目录,所以当要创建个性化配置时,应在该目录下进行。
SpringBoot的默认配置文件位置为src/main/resources/application.properties。关于SpringBoot应用的配置内容都可以集中在该文件中,根据我们引入的不同Starter模块,可以在这里定义容器端口号,数据库连接信息、日志级别等各种配置信息。比如,我们需要自定义Web模块的服务端口号,可以在application.properties中添加server.port=8888来指定服务端口为8888,也可以通过spring.application.name=hello,来指定应用名。
SpringBoot的配置文件除了可以使用传统的properties文件之外,还支持现在被广泛推荐使用YAML文件。
YAML采用的配置格式不像properties的配置那样以单纯的键值对形式来表示,而是以类似大纲的缩进形式来表示。下面是一段YAML配置信息:
environments:dev:url:http://javatiaozaowang.comname:Developer Setupprod:url:http://javatiaozaowang.comname: My Cool App
与其等价的properties配置如下所示:
environments.dev.url=http://javatiaozaowang.comenvironments.dev.name=Developer Setupenvironments.prod.url=http://javatiaozaowang.comenvironments.prod.name=My Cool App
通过YAML的配置方式我们可以看到,配置信息利用阶梯化缩进的方式,其结构更为清晰易读,同时配置内容的字符量也得到显著减少。除此之外,YAML还可以在一个单个文件中通过使用spring.profiles属性来定义多个不同的环境配置。例如下面的内容,在指定为test环境时,server.port将使用8882端口;而在prod环境中,server.port将8883端口;如果没有指定环境,server.port将使用8881端口
server:port:8881---spring:profiles:testserver:port:8882---spring:profiles:prodserver:port:8883
注意:YAML目前还有一些不足,它无法通过@PropertySource注解来加载配置。但是,YAML将属性加载到内存中保存的时候是有序的,所以当配置文件中的信息需要具备顺序含义时,YAML的配置方式比起properties配置文件更有优势。

原文作者:IT枫斗者;如有侵权,请联系管理员删除。