springboot之多环境配置--dev、test、prod

application-dev.properties:开发环境A
application-test.properties:测试环境B
application-prod.properties:生产环境 C

项目内使用:在你的名字为application的文件的中写上:spring.profiles.active=dev(因为你的application是你的springboot默认的主配置文件,所以只能遵从了,当然你有想法可以去改改,跑题了不说了)
格式为:application-{profile}.properties,这句话也解释了为什么调用时候只写我们的命名-后面的内容

拓展:
在linux中jar包执行java -jar xxx.jar –spring.profiles.active=A/B/C,因为经常忘记全部的写法就在这里写一下
————————————————
版权声明:本文为CSDN博主「YOUR_HERO_」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/majipeng19950610/article/details/81702647

springboot的多环节配置
    我们在开发应用的时候,通常同一套程序会被应用和安装到几个不同的环境中,比如开发、测试、生产等。
其中每个环境的数据库地址、服务器端口等配置都不同。如果在为不同环境打包时都要频繁的修改配置文件,那必将是个非常繁琐的且容易出错的事情。
    对于多环境的配置,各种项目构建工具或是架构的基本思路是一样的,通过配置多份不同的环境配置文件,在通过打包命令指定需要打包的内容之后
进行区分打包,spring boot也不列外。或者说实现起来更加简单。
    在springboot中,多环境配置的文件名需要满足 application-{profile}.properties/yml的格式,其中{profile}对应环境表示,
如下所示:
    application-dev.yml  :开发环境
    application-test.yml  :测试环境
    application-prod.yml  :生产环境
   至于具体哪个配置文件会被加载,需要在application.yml文件中通过spring.profile.active 属性来设置,其值对应配置文件中的{profile}值
如spring.profile.active = test就会加载application-test.yml配置文件内容。

以下,以不同环境配置不同的服务端口为例,进行实验:

   创建springboot项目,在resource下面添加三个配置文件,application-dev.yml 、application-test.yml、application-prod.yml

springboot之多环境配置--dev、test、prod_第1张图片

三个文件的端口号和注册的eureka中的服务名称都不同

application-dev.yml   server.port =7001   spring: application: name: springcloud-consumer-dev

application-test.yml   server.port =7001   spring: application: name: springcloud-consumer-dev

application-prod.yml   server.port =7001   spring: application: name: springcloud-consumer-dev

在application.yml中设置属性  spring: profiles: active: test  加载的是application-test.yml文件。

访问eureka-server可以看到端口号和应用名称为test文件中的配置  以开发环境为默认配置 application-dev.yml

springboot之多环境配置--dev、test、prod_第2张图片

 

你可能感兴趣的:(springboot之多环境配置--dev、test、prod)