学习过springboot的都应该知道 springboot可以根据不同的开发环境(本地环境、生产环境)来加载不同的配置文件的
因为本地测试的数据库和部署在服务器上的数据库不一样,所以我把本地测试的数据库配置和服务器的数据库配置分别写在application-dev.yml 和application-prop.yml 这样子做之后,以后把项目打包到服务器之前,就不需要再修改数据库的配置,只需在application.yml 文件中要修改spring.profile.active 配置即可
下面是我在网上找到的一种方法,在本地运行的时候就加载dev环境,打包的时候就加载prop环境,两者切换也不需要做任何的改动
首先,在pom.xml 中加入以下配置,dev 那里加上<activeByDefault>true</activeByDefault> 是代表默认选择dev 环境
<profiles>
<profile>
<id>dev</id>
<properties>
<profiles.active>dev</profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<profiles.active>prod</profiles.active>
</properties>
</profile>
</profiles>
然后,在application.yml 中加入以下配置
spring:
profiles:
active: @profiles.active@
启动项目的时候如果报错不识别@ 符号,可以右键pom.xml 文件,执行一下Reimport 然后在idea右侧找到maven,找到Plugins,jar 右键打开编辑 然后再Profiles里面输入-P prod ,保存
保存之后,在idea的启动列表那里就会有保存好的配置,直接运行就能以prod 环境打包成jar包
|