spring boot开发通常由多个环境, 不同环境用的数据库密码等都不一样, 怎么可以灵活切换呢? 最简单方法可以用spring boot的profiles切换方法.
实例
1 | spring: |
- 用
---
分隔多块配置 - spring.profiles: {name} 是profile的名字
- 最上面没有特殊标记, 或有active标记的一节是默认的, 会被默认加载. 可以将公共的配置放那.
spring:.datasource:.url
中.datasource
应该是yml语法的一种缩写语法
怎么应用
命令行
ref :https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-set-active-spring-profiles
用系统变量spring.profiles.active
穿进去
java -jar -Dspring.profiles.active=prod /tmp/ailog.jar
或用环境变量SPRING_PROFILES_ACTIVE
export SPRING_PROFILES_ACTIVE=prod && java -jar /tmp/ailog.jar
网络上说可以java -jar /tmp/ailog.jar --spring.profiles.active=prod
的方式启用prod的profile, 我实测不行! springboot 2.0.3