准备在生产环境部署 spring boot 服务,面临了一个问题,数据库账号密码与开发环境存在差异。又不方便直接修改 application.properties,因为来回修改无比繁琐。
spring boot 非常贴心的地方是内置了多配置文件的处理机制。不同配置文件使用不同的后缀即可。例如:
- 通用配置文件 application.properties
- 开发环境 application-dev.properties
- 生产环境 application-prod.properties
所以,先直接复制出一份生产环境的配置:
cp application.properties application-prod.properties
如何指定配置文件
例如,在生产环境,想使用 application-prod.properties 作为配置文件
java -jar "-Dspring.profiles.active=prod" springboot-0.0.1-SNAPSHOT.jar
另一种方式是,使用系统环境变量:
export SPRING.PROFILES.ACTIVE=prod
java -jar springboot-0.0.1-SNAPSHOT.jar
如果运行时不指定文件,默认使用哪个
默认使用 application.properties。
dev 配置文件是否有必要
我觉得,如果是个人独立开发的话,dev 配置并没有存在的必要。所有本地开发环境的配置直接写在 application.properties 里就行。也省去了配置 IDEA IDE ,或者 mvnw 的麻烦。
参考
- https://juejin.cn/post/6844903872729726990
- https://www.jianshu.com/p/f4896cc01b8b
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式