springboot多模块多环境配置文件问题(动态配置生产和开发环境)

第一种情况:

spring.profiles.active=环境变量

配置两个环境的,可根据实际需要增加环境模式(开发环境dev,测试环境test,回归坏境retu,预生产环境pre,生产环境prod,等等)

dev代表开发环境:

prod代表生产环境

pom.xml里面配置profiles:

<profiles>
    <profile>
        <id>dev</id>
        <activation>
         <!--  默认激活-->
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <spring.profiles.active>dev</spring.profiles.active>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <spring.profiles.active>prod</spring.profiles.active>
        </properties>
    </profile>
</profiles>

系统环境变量配置:

在本地,如果在这些文件里面配置端口和路径:

appilacton.yml:

server:
  port: 8087
  servlet:
    context-path:  /miservice

application-dev.yml:

server:
  port: 8088
  servlet:
    context-path:  /miservice-dev

application-prod.yml:

server:
  port: 8087
  servlet:
    context-path:  /miservice

有效的是:8088那个配置。

在本地,如果分环境没有配置,就以主环境为主:

appilacton.yml:

server:
  port: 8087
  servlet:
    context-path:  /miservice

application-prod.yml:

server:
  port: 8089
  servlet:
    context-path:  /miservice-prod

则是8087这个是有效的。

小结1:

application.yml引入配置为:

spring:
        profiles:
           active:   ${env}

即:配置读取顺序为:application.yml>>application-dev.yml

第二种情况:

如果想多个模块的配置文件都起作用,可将application.yml文件配置到具体的模块去:

spring:
        profiles:
           active:   miservice, ${env}

在application.yml和application-miservice.yml和application-dev.yml三个文件中:如果都有端口或路径配置,则读取application-dev.yml里面的配置,关闭application-dev.yml里面的配置则读取application-miservice.yml里面的配置,最后读取application.yml

里面的配置。

application.yml引入配置为:

spring:
        profiles:
           active:   miservice, ${env}

即:配置读取顺序为:application-dev.yml>>application-miservice.yml>>application.yml

修订一下:上面的结论是刚开始总结的,后面发现读取顺序是按文件的顺序从下到上读取的。即按结构顺序

到此这篇关于springboot多模块多环境配置文件问题(动态配置生产和开发环境)的文章就介绍到这了,更多相关springboot多模块多环境内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • springboot yml中profiles的巧妙用法(小白必看多环境配置)

    遥想当年我还是个小白的时候,就只是写写demo,也就在一套环境上跑跑,真正当实战的时候,除了你本地环境,还有开发环境,测试环境,生产环境(上线)等等. 如果你不知道用这个profiles,那么这么多套环境,用一种老古董的写法就是这样,用哪个环境就把其他环境注释掉! spring: datasource: username: root #dev password: 123456 #dev #username: root2 #test #password: 456789 #test ... 这还只2

  • springboot多环境配置方案(不用5分钟)

    一 前言 本篇文章的主题是在springboot中写多个配置文件,指定让个配置文件生效,以便于达到在开发环境,测试环境,线上环境根据不同的配置灵活应用:读完本篇你将获得,学会springboot的多环境配置:学会使用idea配置虚拟机参数启动不同的配置文件:学会使用jar包运行并且指定不同的配置文件等: 二 激活方式一 spring框架内部提供了2中方式用于加载YAML文档,以供启动时读取配置文件:YamlPropertiesFactoryBean 会 加载 YAML 变为 Properties

  • springboot 多环境配置 yml文件版的实现方法

    关于 dev.sit.uat.prod多环境切换的配置 最近小伙伴跟杨洋我聊到了多环境配置的问题,网上的大部分教程都是copy的,很多文章根本就没法用,小伙伴很苦恼啊,于是心(yu)地(shu)善(lin)良(feng)的杨洋回去写了个demo给了小伙 , 那么这边文章呢,正好给大家讲解下关于springboot 的多环境配置 科普时间:  dev.sit.uat.prod是什么呢? 首先给刚接触的小伙伴们科普下含义 dev--本地开发环境: sit--测试环境: uat--准生产环境: pro

  • springboot学习笔记之 profile多环境配置切换的实现方式

    前言 一个应用程序从开发到上线,往往需要经历几个阶段,例如开发.测试.上线.每个阶段所用到的环境的配置可能都是不一样的,Springboot 应用可以很方便地在各个环境中对配置进行切换.所以,今天主要介绍Springboot profiles实现多环境配置切换. profiles多环境配置切换的四种方式 多个配置文件的方式yml 多文档块方式 设置程序参数 设置虚拟机参数 1.多个配置文件的方式 1.1.修改application.properties server.port=8080 1.2.

  • 走进SpringBoot之配置文件与多环境详解

    在第一个Springboot项目中我们知道,SpringBoot项目的默认 配置文件在main/resources下的application.properties下,我们接直接用之前的项目了解一下配置文件. application.properties配置文件中 配置整个springboot所需的配置,例如端口,项目名称,redis信息,到后续开发springcloud时的注册中心等等的配置信息,当然也可以自己自定义的配置项. 我们打开application.properties,添加配置项:

  • springboot 多环境切换的方法

    properties文件 profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境: 例如: application-test.properties 代表测试环境配置 application-dev.properties 代表开发环境配置 但是Springboot并不会直接启动这些配置文件,它默认使用application.properties主配置文件: 我们需要通过一个配置来选择需要激活的环境: spring.profiles.active=

  • 教你在SpringBoot中管理多环境配置文件

    实现 1.可以通过配置项 spring.profiles.active 的值来激活对应的环境(思路:使用一个默认的文件作为通用配置文件,不同的配置项写入不同环境的配置文件中,部署不同环境时,只需要修改spring.profiles.active的值即可.个人习惯在通用配置文件只保留spring.profiles.active一个配置项,灵活性高一点) 2.通过部署命令java -jar xxx.jar --spring.profiles=xxx 来激活指定的配置项 针对不同的环境,一般常用的命名

  • springboot 多环境配置教程

    在上一课中我们通过idea工具没有做任何配置就构建了一个springboot项目,并且已经成功启动了,但我们都很清楚这些都远远不能达到我们实际项目的需求,比如我们要引入我们自己的redis配置.mysql配置等,应该如何处理呢?在spring mvc中我们都是通过spring.xml相关文件配置,在springboot中这些都已经不存在了,我们应该怎样配置呢?别急,马上为大家揭晓谜底,跟着我一起来吧! NO1.我们在做项目的时候是不是都会区分很多环境呢?比如开发环境.测试环境.生产环境等,那么第

  • springboot多环境(dev、test、prod)配置详解

    我们在开发应用的时候,通常同一套程序会被应用和安装到几个不同的环境中,比如开发.测试.生产等. 其中每个环境的数据库地址.服务器端口等配置都不同.如果在为不同环境打包时都要频繁的修改配置文件,那必将是个非常繁琐的且容易出错的事情. 对于多环境的配置,各种项目构建工具或是架构的基本思路是一样的,通过配置多份不同的环境配置文件,在通过打包命令指定需要打包的内容之后 进行区分打包,spring boot也不列外.或者说实现起来更加简单. propertiest配置格式 在Spring Boot中多环境

  • springboot多模块多环境配置文件问题(动态配置生产和开发环境)

    第一种情况: spring.profiles.active=环境变量 配置两个环境的,可根据实际需要增加环境模式(开发环境dev,测试环境test,回归坏境retu,预生产环境pre,生产环境prod,等等) dev代表开发环境: prod代表生产环境 pom.xml里面配置profiles: <profiles> <profile> <id>dev</id> <activation> <!-- 默认激活--> <activeB

  • VS Code配置Go语言开发环境的详细教程

    VS Code是微软开源的一款编辑器,插件系统十分的丰富.本文就介绍了如何使用VS Code搭建Go语言开发环境. VS Code配置Go语言开发环境 说在前面的话,Go语言是采用UTF8编码的,理论上使用任何文本编辑器都能做Go语言开发.大家可以根据自己的喜好自行选择.编辑器/IDE没有最好只有最适合. 下载与安装 VS Code官方下载地址:https://code.visualstudio.com/Download 三大主流平台都支持,请根据自己的电脑平台选择对应的安装包. 双击下载好的安

  • Springboot使用@RefreshScope注解实现配置文件的动态加载

    目录 pom.xml properties 启动类 配置类 controller 打包 springcloud对应的springboot版本 参考: spring-boot-starter-actuator提供服务健康检查和暴露内置的url接口. spring-cloud-starter-config提供动态刷新的一些支持和注解. pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xml

  • webpack 2.x配置reactjs基本开发环境详解

    本文介绍了webpack 2.x配置reactjs基本开发环境详解,分享给大家,具体如下: 当前webpack版本:2.2:react: 15.4.2 webpack从1.x升级到2.x替换了几个接口,包括module.loaders这样的重要接口已被弃用(详细变更).官网目前已不推荐使用1.x版本,早上折腾一番,根据2.2版本配置了react基本的开发环境,满足不太复杂的web应用开发,后期会逐步优化配置文件. 如果您之前使用过webpack,需要改动的地方并不大.下文假定您没有接触过类似的打

  • visual studio code 配置C++开发环境的教程详解 (windows 开发环境)

    0 引言 最近帮GF(不幸变成ex了)配置C++开发环境,一开始想给她装个visual studio13完事,但是一想到自己安装以及使用时的诸多麻烦,就有点退却,觉得没有这个必要.正好了解到vscode大行其道,决定按照官网指示配置一版.由于本人非计算机科班出身,对编译原理了解不多,在配置环境的时候遇到了一些麻烦,参照网上的诸多教程,最后发现还是官网比较靠谱,所以结合自己配置的教训,写个帖子,希望能够帮到大家. 1 下载安装vscode 下载网址链接如下. https://code.visual

  • 如何在Ubuntu 18.04(实体机)上配置OpenWRT的开发环境

    一.安装虚拟机(实体机) 安装虚拟机或者实体机都可以,刚上手建议安装虚拟机,选择16.04版本或者18.04版本都OK,其openwrt开发环境的搭建过程大同小异,看自身情况选择即可.安装教程请参考其他资料,此处不再记录.因之前接触过一些Linux程序,故博主本人采用的是Ubuntu 18.04实体机. 二.换源 为避免后续遇到一些包的下载路径受网络环境限制的困难,故我们首先进行换源操作: ①打开"软件和更新": ②将原来的"中国的服务器"更改为"mirr

  • 使用VSCODE配置GO语言开发环境的完整步骤

    1. 安装GO SDK 官方下载地址是:golan.google.cn/dl 2. 安装完毕后,会自动在配置文件中加入一些内容,其中比较重要的三个是: GOROOT(具体GO语言在硬盘上安装的位置,比如D:/GO) GOPATH(未来使用go install安装第三方工具包时,都会安装在GOPATH指定文件夹下的src或bin目录下,比如C:/Users/Administrator/Go) 最后一个是GO语言安装路径下的bin文件夹路径(例如:D:/GO/bin)添加到PATH中. 3. 在终端

  • CentOS 7下配置Ruby语言开发环境的方法教程

    本文跟大家分享的是在CentOS 7下配置Ruby语言开发环境的方法教程,分享出来供大家参考学习,下面来看看详细的介绍: 安装Ruby 2.2 CentOS7存储库中的Ruby版本为2.0,但如果需要,可以使用RPM软件包安装2.2 1.添加CentOS SCLo软件集合存储库 [root@linuxprobe ~]# yum -y install centos-release-scl-rh centos-release-scl # set [priority=10] [root@linuxpr

  • Windows下Eclipse+PyDev配置Python+PyQt4开发环境

    本文为大家分享了Windows下配置Python PyQt4开发环境的详细步骤,供大家参考,具体内容如下 1. 下载相关软件 Eclipse下载地址:http://www.eclipse.org/downloads/ JRE下载地址:http://www.java.com/zh_CN/download/manual.jsp PyDev下载地址: http://sourceforge.net/projects/pydev/ Python下载地址:http://www.python.org/geti

  • VSCode 配置React Native开发环境的方法

    本文介绍了VSCode 配置React Native开发环境的方法,分享给大家,具体如下: 1.安装VSCode 2.安装插件 按F1 并输入 ext install 并回车, 或者使用 输入react-native安装React Native Tools 假定你已经在设备上安装了react native, 如果没有安装,请使用npm install -g react-native-cli安装 或者按照官方文档操作 新建一个RN工程 并使用VSCode打开 安装完成后 按F1可以看到命令里多了很

随机推荐