Spring Boot配置 -- Profile
首先了解什么是Profile, 他的用处是什么
Profile是Spring对不同环境提供不同配置功能的支持, 可以通过激活 , 制定参数等方式快速切换环境
- 多profile文件形式:
-- 格式 : application - {profile}.properties :
eg : application-test.properties application-pro.properties
- 多profile文档块模式:
yaml文件 : application.yml
-
激活方式:
- 命令行 -- spring.profiles.active = test
- 配置文件 spring.profile.active = test
- jvm参数 -Dspring.profile.active = test (-D是重点)
演示:
1.直接在配置文件中指定
我们在application.properties下配置启动端口号为 : 8888
application-test.properties下配置启动端口号为 : 8088
默认情况下SpringBoot会加载applica.properties中的配置
启动成功:
然后我们在application,properties中改变配置文件:
然后我们启动项目 :
可以看到浏览器也启动成功了 :
这时我们访问8888端口是失败的 :
说明在配置文件中指定的方法是成功的
2.yml多文件块模式中指定
首先我们创建application.yml 文件, 然后在文件中写入以下配置:
然后我们启动文件注意要把application.properties 中的配置注释掉 , 不然Spring boot会默认使用application.properties中的配置:
测试表明使用yml多文件块模式也是可以使用的
3.使用命令行的方式:
打开启动配置:
在program arguments中写上 : --spring.profiles.active=test
启动项目:
命令行成功生效
还有一种方式 : 将maven项目打包
打开项目所在位置:
进入cmd控制 :
输入 : java -jar springbootprofile-0.0.1-SNAPSHOT.jar --spring.profiles.active=pro 启动项目并指明配置文件 :
这种方式也是可以的
4.设置虚拟机参数:
打开启动配置:
在虚拟机参数上填写 : -Dspring.profiles.active=test
然后启动项目:
因此设置虚拟机参数也是可行的
以上便是几种 SpringBoot 中profile的配置方式 !
补充:___
配置文件加载位置:
springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件
-
–file:./config/
-
–file:./
-
–classpath:/config/
-
–classpath:/
优先级由高到底,高优先级的配置会覆盖低优先级的配置
SpringBoot会从这四个位置全部加载主配置文件 : 互补配置