Springboot多环境开发及使用方法
目录
- 概述
- 多环境设置使用
- 多环境分组管理
- Maven和spring-boot的配置冲突
概述
Springboot在不同的阶段运行,所使用的环境可能不一样
比如在开发阶段、测试阶段、生产阶段,应用阶段
可能这些阶段Springboot项目运行的环境都不同,所以可以提前设置多种环境,根据场景的不同进行选择使用
多环境设置使用
方法1:
在yml配置文件中提前写好多种配置,然后选择调用哪个
方法2:
这个方法也适用于后缀名为prperties的配置文件
每种环境设置一个配置文件,然后再写一个主配置文件,在主配置文件中设置调用哪个环境,并且写公共配置
就等于将方法一中的每个部分单独写成一个文件。
这里需要注意一点,这里的环境命名方式不同了
这里的命名方式是:application-环境的名称
,然后再这些环境配置的文件里面就不需要在通过spring.profiles来设置名字了,当然如果不想按照这种命名方式来命名,则需要通过spring.profiles来设置名字
主配置文件的名称就起application,在主文件中,通过
来调用对应的环境
多环境分组管理
项目开发的时候,对于不同的模块设置不同的配置文件,比如持久层,可以设置一个名为application-devDB
的配置文件,MVC层设置一个名为application-devMVC
的配置文件
然后在主配置中对其他的环境进行调用管理,include
可以在激活指定环境的情况下,同时对多个环境进行加载使其生效,多个环境间使用逗号分隔
而且,如果多个环境中有相同的配置,则后加载的环境会覆盖前面的,加载的顺序:先按照include中的环境一个一个的加载、最后加载active中的环境
但是对于同时对多个环境进行加载使其生效这个功能,include这个方法现在已经不是主流,我们更多的是使用group
对不同名字的配置文件进行分组,比如application-dev首字母大写的字符串
可以划分为dev组的,如上图
然后用active来决定调用哪一组的配置文件
Maven和spring-boot的配置冲突
spring-boot基于maven坐标的控制工作的
所以为了防止maven与spring-boot互相的配置冲突,我们应该在maven中配置,然后让sping-boot去读取
当Maven与SpringBoot 同时对多环境进行控制时,以Mavn为主,SpringBoot使用@. . @占位符读取Maven对应的配置属性值
首先,有这么几个配置文件
第一步:在maven的pom文件中配置对应的多环境开发:
第二步:在springboot中引用
idea的一个小BUG
基于SpringBoot读取Maven配置属性的前提下,如果在Idea下测试,工程时pom.xml每次更新需要手动compile方可生效
到此这篇关于Springboot多环境开发的文章就介绍到这了,更多相关Springboot多环境开发内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
springboot多模块多环境配置文件问题(动态配置生产和开发环境)
第一种情况: spring.profiles.active=环境变量 配置两个环境的,可根据实际需要增加环境模式(开发环境dev,测试环境test,回归坏境retu,预生产环境pre,生产环境prod,等等) dev代表开发环境: prod代表生产环境 pom.xml里面配置profiles: <profiles> <profile> <id>dev</id> <activation> <!-- 默认激活--> <activeB
-
SpringBoot配置logback.xml 多环境的操作步骤
前提 logback日志文件要实现springboot多环境配置,不然每次都需要修改logback.xml里面的配置文件,所以很麻烦. 操作步骤 1.resource文件的内容结构如下: 2.配置application.yml spring: profiles: active: dev logging: config: classpath:logback-${spring.profiles.active}.xml 3.配置lockback-dev.xml 这个地方就可以实现自己的多环境日志配置了
-
springboot全局配置文件与多环境配置的全过程
目录 1.全局配置文件 2.多环境配置 附:加载多环境配置 总结 1.全局配置文件 新建一个springboot项目它的resources目录下有一个application.properties,这个文件就是springboot的全局配置文件. 全局配置文件的格式有三种,分别为 .properties .yaml .yml我们可以新建application.yaml application.yml,同样他们也都是全局配置文件.他们的配置先后顺序为 .properties .yaml .yml,.
-
Springboot内外部logback多环境配置详解
目录 一.概述 二.项目内外配置 三.使用自定义appender 四.logback查找配置源码 五.案例源码 一.概述 SpringBoot官方文档Springboot 默认读取的是项目内的 resources 中 logback 配置文件.如果 classpath(resources) 下有logback-test.xml会优先生效,并且会和其他logback文件同时生效.Springboot 默认日志级别是DEBUG,所以在logback初始化之前,会有DEBUG日志输出. 二.项目内外配
-
SpringBoot Profiles 多环境配置及切换
目录 前言 默认环境配置 默认运行环境 多环境配置 多环境切换 小结 前言 大部分情况下,我们开发的产品应用都会根据不同的目的,支持运行在不同的环境(Profile)下,比如: 开发环境(dev) 测试环境(test) 预览环境(pre) 生产环境(prod) 这里的 环境 实际上是一个统称,不同的环境可能代表着 使用的域名.端口.实例数目是不同的: 连接的数据库地址.端口.名称是不同的: 使用的日志输出格式.级别.保存时间是不同的: 以数据库为例,应用在开发环境下运行时,连接的是开发环境对应的
-
SpringBoot数据校验及多环境配置的问题详解
目录 1. 数据校验 2. 多环境配置 3. 配置文件加载位置 4. 总结 接上节,本节补充一下数据校验及多环境配置的内容,仍是 SpringBoot-02-Config 项目. 1. 数据校验 使用数据校验,可以在输入不合法数据时抛出异常,首先要添加 validation 的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-
-
SpringBoot配置Profile实现多环境支持
前些天,有一个需求要用SpringBoot的多环境,当时没有系统学习springboot ,所以在网上找来找去的找到了一个解决方案,并写了一篇文章用来记录---(springBoot项目如何启动多个实例),但是那篇文章介绍的并不全面.刚好今天学习了springboot的多环境配置,于是趁着刚学习完,拿这篇全面的讲解多环境配置,同时也用来复习巩固. Profile 1.多Profile文件 我们在主配置文件编写的时候,文件名可以是 application-{profile}.yml或者applic
-
Springboot多环境开发及使用方法
目录 概述 多环境设置使用 多环境分组管理 Maven和spring-boot的配置冲突 概述 Springboot在不同的阶段运行,所使用的环境可能不一样比如在开发阶段.测试阶段.生产阶段,应用阶段可能这些阶段Springboot项目运行的环境都不同,所以可以提前设置多种环境,根据场景的不同进行选择使用 多环境设置使用 方法1:在yml配置文件中提前写好多种配置,然后选择调用哪个 方法2:这个方法也适用于后缀名为prperties的配置文件每种环境设置一个配置文件,然后再写一个主配置文件,在主
-
SpringBoot多环境开发与日志小结
前置导入 什么是多环境?其实就是说你的电脑上写的程序最终要放到别人的服务器上去运行.每个计算机环境不一样,这就是多环境.常见的多环境开发主要兼顾3种环境设置,开发环境——自己用的,测试环境——自己公司用的,生产环境——甲方爸爸用的.因为这是绝对不同的三台电脑,所以环境肯定有所不同,比如连接的数据库不一样,设置的访问端口不一样等等. 多环境开发(yaml单一文件版) 那什么是多环境开发?就是针对不同的环境设置不同的配置属性即可.比如你自己开发时,配置你的端口如下: server: port: 80
-
apache 配置模拟外网环境开发网站的方法
因为很多程序员在开发时都会在Apache指定的网站目录下建一个文件夹放网站,当在本机测试时就是输入http://127.0.0.1/web1/这样访问网站,但上传到网站后是用域名的,这样就会造成路径不正确. 解决方法: 在C:\WINDOWS\system32\drivers\etc目录下找到hosts文件,用文本打开,在里面加一句 127.0.0.1 emtit.com 这样你就可以不设DNS服务器就可以用www.emtit.com访问你的网站了,但这样还不能到达你的虚拟目录,打开Apache
-
springboot 多环境配置 yml文件版的实现方法
关于 dev.sit.uat.prod多环境切换的配置 最近小伙伴跟杨洋我聊到了多环境配置的问题,网上的大部分教程都是copy的,很多文章根本就没法用,小伙伴很苦恼啊,于是心(yu)地(shu)善(lin)良(feng)的杨洋回去写了个demo给了小伙 , 那么这边文章呢,正好给大家讲解下关于springboot 的多环境配置 科普时间: dev.sit.uat.prod是什么呢? 首先给刚接触的小伙伴们科普下含义 dev--本地开发环境: sit--测试环境: uat--准生产环境: pro
-
springboot 多环境切换的方法
properties文件 profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境: 例如: application-test.properties 代表测试环境配置 application-dev.properties 代表开发环境配置 但是Springboot并不会直接启动这些配置文件,它默认使用application.properties主配置文件: 我们需要通过一个配置来选择需要激活的环境: spring.profiles.active=
-
springboot多环境进行动态配置的方法
目录 一.如何配置多环境 二.生效多环境的多种方式 2.1.spring.config.name 2.2.spring.profiles.active 2.3.pom中<profiles>标签 三.总结 在平时的开发中,经常会有多个环境,如何管理多个环境中的配置呐?一个是我们本地的开发环境,可以称为dev,一个是测试环境,我们称为test,最后还要有生产环境,称为prod.每个环境的配置都是不一样的,如何做到快捷方便的使用各自环境的配置绝对是开发中需要着重考虑的. 一.如何配置多环境 在spr
-
SpringBoot多配置切换的配置方法
1. 切换需求 有时候在本地测试是使用8080端口,可是上线使用的又是80端口. 此时就可以通过多配置文件实现多配置支持与灵活切换 2.多配置文件 3个配置文件: 核心配置文件:application.properties 开发环境用的配置文件:application-dev.properties 生产环境用的配置文件:application-pro.properties 这样就可以通过application.properties里的spring.profiles.active 灵活地来切换使用
-
springboot快速整合Mybatis组件的方法(推荐)
Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者. 原有Spring优缺点分析 Spring的优点分析 Spring是Java企业版(Java Enterprise Edition,
-
SpringBoot + Vue + Electron 开发 QQ 版聊天工具的详细教程
一.简介 这是一款基于 JS 实现的超轻量级桌面版聊天软件.主要适用于私有云项目内部聊天,企业内部管理通讯等功能,主要通讯协议websocket.也支持web网页聊天实现.文字聊天,互传文件,离线消息,群聊,断线重连等功能. 先看一下效果,下图左边是web版,右边为PC版. 二.本地搭建 2.1 技术栈 后端技术栈: springboot: 让开发人员快速开发的一款Java的微服务框架. tio: 是百万级网络框架oauth2.0: OAuth 2.0 是一个行业的标准授权协议. OAuth 2
-
java开发flyway的方法
FlyWay官网:https://flywaydb.org/getstarted/firststeps/maven Flyway做为database migration开源工具,功能上像是Git.svn这种代码版本控制.google搜索database migration,或者针对性更强些搜索database migration Java,会有其它的framework.tool.甚至aws的service.因为项目使用到了flyway,而且确实google中排第一位的搜索结果就是flyway,那
随机推荐
- oracle普通表转化为分区表的方法
- PHP中的浅复制与深复制的实例详解
- php生成excel文件的简单方法
- JavaBean(EJB) 3.0 全新体验
- SQL中Having与Where的区别及注意
- SpringBoot常见问题小结
- stream.js 一个很小、完全独立的Javascript类库
- C#Web应用程序入门经典学习笔记之一
- 获取URL文件名后缀
- Yii操作数据库的3种方法
- 比较两个字符串是否相等的shell代码
- 防止网站内容被小偷采集的ASP代码
- 什么是PHP文件?如何打开PHP文件?
- 详解Android应用开发中Scroller类的屏幕滑动功能运用
- php下将多个数组合并成一个数组的方法与实例代码
- IE9 IE8 ajax跨域问题的快速解决方法
- 使用HTTP api简单的远程执行PowerShell脚本
- 用jQuery实现一些导航条切换,显示隐藏的实例代码
- JS中Json数据的处理和解析JSON数据的方法详解
- Javascript客户端脚本的设计和应用