前言

我们在开发Spring Boot应用时,通常同一套程序会被应用和安装到几个不同的环境,比如:开发、测试、生产等。其中每个环境的数据库地址、服务器端口等等配置都会不同,如果在为不同环境打包时都要频繁修改配置文件的话,那必将是个非常繁琐且容易发生错误的事。

对于多环境的配置,各种项目构建工具或是框架的基本思路是一致的,通过配置多份不同环境的配置文件,再通过打包命令指定需要打包的内容之后进行区分打包,Spring Boot也不例外,或者说更加简单。

1. springboot多环境配置

在Spring Boot中多环境配置文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,比如:

application-dev.properties:开发环境

application-test.properties:测试环境

application-prod.properties:生产环境

至于哪个具体的配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,其值对应{profile}值。

如:spring.profiles.active=test就会加载application-test.properties配置文件内容

2.样例

针对各环境新建不同的配置文件application-dev.propertiesapplication-test.propertiesapplication-prod.properties

在这三个文件均都设置不同的server.port属性,如:dev环境设置为8080,test环境设置为9090,prod环境设置为80

application.properties中设置spring.profiles.active=dev,就是说默认以dev环境设置

测试不同配置的加载:

执行java -jar xxx.jar,可以观察到服务端口被设置为8080,也就是默认的开发环境(dev)

执行java -jar xxx.jar --spring.profiles.active=test,可以观察到服务端口被设置为9090,也就是测试环境的配置(test)

执行java -jar xxx.jar --spring.profiles.active=prod,可以观察到服务端口被设置为80,也就是生产环境的配置(prod)

3.总结

application.properties中配置通用内容,并设置spring.profiles.active=dev,以开发环境为默认配置

application-{profile}.properties中配置各个环境不同的内容

通过命令行方式去激活不同环境的配置。

springboot 不同环境不同的配置的更多相关文章

  1. 【2.0】SpringBoot多环境yml文件配置

    一.使用Spring Boot Profiles 1. 使用yml文件 首先,我们先创建一个名为 application.yml的属性文件,如下: server: port: 8080 my: nam ...

  2. springboot 不同环境读取不同配置

    1. 3个配置文件(更多环境可以建多个): application.properties  (公共配置文件) application-dev.properties  (开发环境) applicatio ...

  3. spring-boot多环境配置文件

    spring-boot多环境配置文件 目录 配置 多环境配置文件名称要遵循格式 application-{profile}.yml application.yml spring: profiles: ...

  4. springboot区分开发、测试、生产多环境的应用配置(二)

    转:https://www.jb51.net/article/139119.htm springboot区分开发.测试.生产多环境的应用配置(二) 这篇文章主要给大家介绍了关于maven profil ...

  5. springboot区分开发、测试、生产多环境的应用配置

    转:https://blog.csdn.net/daguairen/article/details/79236885 springboot区分开发.测试.生产多环境的应用配置(一) Spring可使用 ...

  6. SpringBoot 多环境配置

    转载:https://www.cnblogs.com/gdpuzxs/p/7191436.html 在我们的实际开发中,一般都有三套环境,开发环境,测试环境,生产环境,三套环境的数据库连接配置也有所不 ...

  7. springboot 多环境配置yml或properties

    https://www.cnblogs.com/mr-yang-localhost/p/8971327.html   springboot 多环境配置 https://blog.csdn.net/li ...

  8. springboot多环境配置

    springboot多环境(dev.test.prod)配置 2017-07-17 10:33 1290人阅读 评论(0) 收藏 举报  分类: spring boot(6)  版权声明:本文为博主原 ...

  9. 小D课堂 - 零基础入门SpringBoot2.X到实战_第14节 高级篇幅之SpringBoot多环境配置_59、SpringBoot多环境配置介绍和项目实战

    笔记 1.SpringBoot多环境配置介绍和项目实战(核心知识)     简介:SpringBoot介绍多环境配置和使用场景 1.不同环境使用不同配置         例如数据库配置,在开发的时候, ...

随机推荐

  1. securecrt重建

    CRT重建步骤: 重装系统或者重装CRT后,面临找回以前的session记录信息.记住下面的步骤,再也不担心丢session了! 1.备份关键文件(config文件夹)   (1)配置文件默认文件路径 ...

  2. 20145229吴姗珊《网络对抗》WEB基础实践

    20145229吴姗珊<网络对抗>WEB基础实践 基础与实践 基础问题 1.什么是表单 表单是可以收集用户的信息和反馈意见,是网站管理者与浏览者之间沟通的桥梁. 一部分是HTML源代码用于 ...

  3. 简单介绍java Enumeration(转)

    Enumeration接口 Enumeration接口本身不是一个数据结构.但是,对其他数据结构非常重要. Enumeration接口定义了从一个数据结构得到连续数据的手段.例如,Enumeratio ...

  4. java基础(6)--数组和方法

    数组 1. 什么是数组? 数组是相同数据类型的元素组成的集合.这些元素按线性顺序排列.所谓线性顺序是指除第一个元素外,每一个元素都有唯一的前驱元素:除最后一个元素外,每一个元素都有唯一的后继元素.(“ ...

  5. Reverse Nodes In K Group,将链表每k个元素为一组进行反转---特例Swap Nodes in Pairs,成对儿反转

    问题描述:1->2->3->4,假设k=2进行反转,得到2->1->4->3:k=3进行反转,得到3->2->1->4 算法思想:基本操作就是链表 ...

  6. Rancher + K8S RestApi使用

      1前言 1.1使用的软件及版本 软件 版本号 Rancher 1.6stable Kubernetes 1.8.3 Docker 1.12.6 1.2 Rancher与K8S的RESTAPI差异 ...

  7. 在OpenStack里怎样配置Neutron,让虚拟机访问外网

    http://blog.csdn.net/zhangli_perdue/article/details/50264681 OpenStack里虚机(或者叫instance)只有在分配floating ...

  8. angularjs地址栏传参

    1:路由定义参数 2.controller 3. 4.目标得到参数值

  9. 新东方雅思词汇---6.3、brilli

    新东方雅思词汇---6.3.brilli 一.总结 一句话总结: 发光 brilliant 英 [ˈbrɪlɪənt]  美 ['brɪljənt]  adj. 灿烂的,闪耀的:杰出的:有才气的:精彩 ...

  10. 【Android压力测试】monkey压力测试

    1.首先安装adb.java环境 2.下载地址: 链接: https://pan.baidu.com/s/1i5xltpN 密码: ra6g monkey 很简单的理解是 像猴子一样一顿点乱点,看是否 ...