(二)2.3 springboot配置文件详解——实际应用

一、运维部署springboot项目时,注意事项

通常 我们的springboot项目在部署时,都是是打成jar包后,放在linux环境上运行。

部署也分为在测试环境部署、在准生产环境部署等。

举个例子:假如现在是在 开发环境中,,,那么idea中的配置文件应该是有多个,开发环境,我们当然使用的是 application-dev.propertie 这个配置文件。

在idea中运行项目时,需要在启动配置中设置,使用 dev 环境的配置启动即可。

然而,当开发完成后,需要运维进行项目部署时,为了方便运维使用,以及 可以随时的新增 或者修改覆盖原来配置文件的内容,我们 可以写这样一个脚本,,

java -jar boot.jar --spring.profiles,active=dev --spring.config.additional-location=applciationXX.properties(properties配置文件的位置)

其中:

  • --spring.profiles,active=dev 这个是用来指定 我们使用的是 dev 环境下的配置信息,,
  • --spring.config.additional-location=applciationXX.properties 是用来指定一些追加的配置信息,它的优先级是最高的,会覆盖低优先级的配置,,同时,不同的配置会进行互补。

如果使用了上面的命令,则配置文件的加载顺序是:

1、外部配置文件 --spring.config.additional-location=applciationXX.properties(properties配置文件的位置)
2、jar包中的指定环境配置--spring.profiles,active=dev (类路径下的)
3、jar包中的 默认环境配置 (类路径下的application.properties)


实际上,运维在部署时,除了使用上面的方式,还可以使用 如下的方式,来达到一样的效果。

我们可以在jar包的同级目录下 放一个 application-dev.yml 配置文件。这个配置文件 用于运维修改 或者新增覆盖配置。(弊端:这个配置文件的位置是 固定的

然后使用如下命令启动
java -jar boot.jar --spring.profiles,active=dev

然后,我们就可以修改这个配置文件,来覆盖jar包中的配置。

加载顺序:
1、外部:jar包同级目录的dev配置
2、内部:jar包内部的dev配置
3、外部:jar包同级目录的默认配置
4、内部:jar包内部的默认配置

二、如何判断 配置文件的加载?

首先看 jar包的启动命令中 是否指定了 配置环境--spring.profiles,active=dev(dev/test),若指定了dev,则执行顺序是这样的:

1、先加载 跟jar包同一目录下的 application-dev.yml
2、然后在 加载 jar包内的 application-dev.yml
3、先加载 跟jar包同一目录下的默认环境配置 application.yml
4、再加载 跟jar内的默认环境配置 application.yml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值