版权声明:未经允许不得转载! https://blog.csdn.net/bingxuesiyang/article/details/88421193
本文以SpringBoot为基础进行profile根据环境自动切换配置文件的讲解。
一般项目中存在以下环境:
- 开发环境(dev) 本地开发使用,对应application-dev.properties文件
- 预发环境(pre) 测试人员测试使用,对应application-pre.properties文件
- 生产环境(production) 线上正式环境用,对应application-production.properties文件
笔者针对下图进行讲解:
先针对dev配置进行分析
<profile>标签中的<id>dev</id>标签中的dev对应右侧栏maven中Profiles打灰常色勾的dev,之所以会打灰色勾就是因为在<activatetion>标签中<activeByDefault>(是否默认激活该标签)设置成了true,因此默认使用dev环境,继续看下一行,在<properties>标签的<profileActive>中指定了配置文件为application-dev.properties。这里用dev而并没有写全称,因为SpringBoot的配置文件遵循application-{环境变量名称}-properties的格式,因此在pom文件中只写大括号中的环境变量名也就是dev就行了。
此时,你双击右侧maven栏的package命令打包的时候,就会以application-dev.properties为准进行打包。
如果你想部署生成环境,需要用生成环境的配置文件application-production.properties怎么办?
只需要在右侧maven栏中,将production打上勾就行,然后双击maven的package命令进行打包,此时就以application-production.properties为准就行打包了。
注意:在切换打勾的环境时,不要忘了此时idea会在右下角提示pom文件已改变是否重新加载?点Import Changes就行,然后在打包。如下图: