SpringBoot配置Profile实现多环境支持

前些天,有一个需求要用SpringBoot的多环境,当时没有系统学习springboot ,所以在网上找来找去的找到了一个解决方案,并写了一篇文章用来记录---(springBoot项目如何启动多个实例),但是那篇文章介绍的并不全面.刚好今天学习了springboot的多环境配置,于是趁着刚学习完,拿这篇全面的讲解多环境配置,同时也用来复习巩固。

Profile

1.多Profile文件

我们在主配置文件编写的时候,文件名可以是 application-{profile}.yml或者application-{profile}.properties ,都行,以下用yml为主。以下主配置文件表示 application.yml

eg.

编写一个名为 application-dev.yml文件:

server:
  port: 8081

编写一个名为application-prod.yml文件:

server:
  port: 8082

先启动springboot项目,发现启动的端口为 81(application.yml中指定的端口为 81) ,也就是说默认启动的是application.yml的环境。

2. yml支持多文档块方式

配置文件中也支持使用多文档块的方式创建多环境,是用 --- (三个-)表示一个文档块 ,如果不指定启动别的文档块,默认启动第一个文档块,可以通过 spring.profiles.actice=dev 来指定启动别的文档块。使用图解说明如下:

3. 激活指定的profile

1.在配置文件(application.yml)

中指定spring.profiles.actice: dev(在sts中yml文件中会自动提示,并自动缩进)。

2. 使用命令行的方式激活:如下所示:

1)可以在编辑器idea,eclipse的run configurations中指定参数

--spring.profiles.active=dev

2将项目打成jar包 ,然后启动dos命令行的方式:

3使用虚拟机参数方式:

-Dspring.profiles.active=dev 注意:-D是固定写法

上面就是springboot配置多环境并启动的几种方式,较之前写的更加详细。我使用的ide是IDEA ,eclipse和sts配置参数也在run configurations中,希望能够帮到你。

以上仅为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2021-08-01

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

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

使用Spring boot 的profile功能实现多环境配置自动切换

通常服务端应用开发需要经过以下几个流程: 开发 -> 测试 -> RC验证 -> 上线 这就涉及到四个不同的环境,开发环境.测试环境.RC环境以及生产环境,为了避免不同环境之间相互干扰,通常需要独立部署数据库.缓存服务器等,那么应用配置也要做相应的调整. 为了解决不同环境配置切换问题,很多人的做法是:把配置文件根据不同的环境,放到不同的目录或文件中,打包时通过gradle或maven,通过命令行参数指定要打哪个环境的包.这样就可以针对不同的环境生成不同的包.但这样的做法有以下几个问题:

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

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

Spring Boot使用profile如何配置不同环境的配置文件

在springboot的开发中,有时候我们会有不同的配置,例如日志打印,数据库连接等,开发,测试,生产每个环境可能配置都不一致,还好,springboot支持通过不同的profile来配置不同环境的配置,下面就大致介绍一下yml配置文件跟properties配置文件怎么使用profile配置不同环境的配置文件... 先介绍一下开发环境: jdk版本是1.8 springboot的版本是1.4.1 开发工具为 intellij idea 我们先来介绍,使用一个yml文件,通过不同的profile来

Spring Boot的Profile配置详解

Profile 是Spring Boot用来针对不同的环境对不同的配置提供的支持,全局Profile配置使用application-{profile}.properties,如: application-dev.properties 可以表示为开发环境. 然后通过application.properties文件中的spring.profiles.active=dev来设置 在src/main/resources下面新建 application-dev.properties和application

Spring Boot数据库链接池配置方法

配置方法 基于当前的1.5.2.RELEASE的Spring Boot. 依照官方文档,如果增加了如下依赖的配置,或者类路径中存在spring-boot-starter-jdbc的jar,那么已默认启用了数据库链接池. <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dep

解决spring boot 1.5.4 配置多数据源的问题

spring boot 已经支持多数据源配置了,无需网上好多那些编写什么类的,特别麻烦,看看如下解决方案,官方的,放心! 1.首先定义数据源配置 #=====================multiple database config============================ #ds1 first.datasource.url=jdbc:mysql://localhost/test?characterEncoding=utf8&useSSL=true first.datasou

spring boot 集成shiro的配置方法

spring boot提供了一个自带的认证框架,同时也提供自定义的javaconfig配置扩展,spring-sercurity同样也是优秀的框架,但是习惯了用apache shiro框架,而且原项目就是集成的shiro框架,到网上找了一下配置方式,没找到完全配置的方法,因此决定自己动手,丰衣足食! 要在spring boot上集成其他框架,首先要会spring javaconfig方法,利用此方法同样可以配置其他模块,废话少说,开始... 开始前需要导入maven依赖(shiro-web可选)

Spring Boot Web应用程序配置详解

在这篇短文中,我们将介绍Spring Boot Web应用程序配置的一些有趣方面. 我们将介绍一些Web应用程序最常用的配置. 1. 介绍 Spring Boot带有智能构建功能,可以轻松创建Web或独立应用程序.Spring Boot可以为我们做很多事情,甚至不需要我们为Web应用程序编写一行代码.本文中,我们只介绍其中几个配置. 2. HTTP端口 web应用最常见的一个配置是HTTP端口号,我们可以用下列几种方式轻松地为我们的web应用配置HTTP端口号: 使用application.pr

Spring boot如何快速的配置多个Redis数据源

简介 redis 多数据源主要的运用场景是在需要使用多个redis服务器或者使用多个redis库,本文采用的是fastdep依赖集成框架,快速集成Redis多数据源并集成lettuce连接池,只需引入依赖后在yaml文件中配置多数据源连接信息即可. 源码地址 希望大家可以star支持一下,后续还会加入其它依赖的简易整合. https://github.com/louislivi/fastdep 引入依赖 Maven <dependency> <groupId>com.louisli

详解Spring Boot 部署与服务配置

spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动.其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat).当然你也可以将项目打包成war包,放到独立的web容器中(Tomcat.weblogic等等),当然在此之前你要对程序入口做简单调整. 项目构建我们使用Maven或Gradle,这将使项目依赖.jar包管理.以及打包部署变的非常方便. 一.内嵌 Server 配置 Spring Boot将容器内置后,它通过配置文件

Spring boot 添加jsp支持配置详解

spring boot添加对jsp的支持,以下是pom.xml文件的配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v