Spring Boot结合IDEA自带Maven插件如何快速切换profile

目录
  • 一、前言
  • 二、配置详情
    • 2.1 pom.xml修改
    • 2.2 bootstrap.yml/application.yml修改

一、前言

IDEA是目前 Java 开发者中使用最多的开发工具,它有着简约的设计风格,强大的集成工具,便利的快捷键。

在项目项目整个开发运维周期中,我们的的项目往往需要根据不同的环境,使用不同的文件配置。

比如以下部分:

  • 默认:application.properties/yml
  • 共用配置:application-common.properties/yml
  • 开发环境:application-dev.properties/yml
  • 生产环境:application-prod.properties/yml
  • 测试环境:application-test.properties/yml

在实际使用中通过在application.yml文件中配置:

spring:
  profiles:
    active: dev

application.properties文件中配置:

spring.profiles.active=dev

置后Spring Boot会激活application-${active}.properties/yml的配置文件。

如此一来每次我们需要切换环境时只需要修改此配置即可。但此方式也明细的不足,比如:每次切换环境时都需要修改此配置,在修改后也存在文件误传Git的风险,单体项目来说尚可接受,但对于Spring Cloud微服务项目而言操作就很麻烦了。

二、配置详情

结合IDEA自带的maven插件来实现不同配置的切换,每次切换环境只要勾选就行了。

2.1 pom.xml修改

新增以下内容:

<build>
    <resources>
	    <resource>
	    	<directory>src/main/resources</directory>
            <!-- 指定目录下的文件通过maven过滤器 -->
	    	<filtering>true</filtering>
	    </resource>
    </resources>
</build>

<profiles>
    <profile>
        <id>dev</id>
        <properties>
            <!-- 环境标识,需要与配置文件的名称相对应 -->
            <profile.active>dev</profile.active>
            <nacos.username>nacos</nacos.username>
            <nacos.password>nacos</nacos.password>
        </properties>
        <activation>
            <!-- 默认环境 -->
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
    <profile>
        <id>test</id>
        <properties>
            <!-- 环境标识,需要与配置文件的名称相对应 -->
            <profile.active>test</profile.active>
            <nacos.username>nacos</nacos.username>
            <nacos.password>nacos</nacos.password>
        </properties>
    </profile>
</profiles>

Maven过滤器会替换文件中的占位符@变量名@,可以查看编译后的文件,原本的占位符被变量值所替代。

2.2 bootstrap.yml/application.yml修改

spring:
  profiles:
    active: @profile.active@

注:占位符 ‘@maven中配置的变量名@’,我的名称为profile.active

到此这篇关于Spring Boot结合IDEA自带Maven插件快速切换profile的文章就介绍到这了,更多相关Spring Boot切换profile内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Maven的porfile与SpringBoot的profile结合使用案例详解

    使用maven的profile功能,我们可以实现多环境配置文件的动态切换,可参考我的上一篇博客.但随着SpringBoot项目越来越火,越来越多人喜欢用SpringBoot的profile功能.但是用SpringBoot的profile功能时,一般我们默认激活的profile肯定是开发环境的profile.当我们打成jar包后,如果在生产环境下运行,就需要在运行这个jar包的命令后面加个命令行参数来指定切换的profile.虽然这样很方便,但是容易忘记加这个参数. 我们可以通过maven的pro

  • Maven管理SpringBoot Profile详解

    1. Spring Profile Spring可使用Profile绝对程序在不同环境下执行情况,包含配置.加载Bean.依赖等. Spring的Profile一般项目包含:dev(开发), test(单元测试), qa(集成测试), prod(生产环境).由spring.profiles.active属性绝定启用的profile. SpringBoot的配置文件默认为 application.properties(或yaml,此外仅心properties配置为说明).不同Profile下的配置

  • springboot结合maven配置不同环境的profile方式

    目录 springboot结合maven配置不同环境的profile 1.在spring-boot中新建配置文件 2.在application.yml中增加属性 3.在pom.xml中添加不同的profile 4.测试 springboot maven多环境配置 环境 1.在resources下创建/dev文件夹 2.在pom.xml文件加入相关配置如下 springboot结合maven配置不同环境的profile 1.在spring-boot中新建配置文件 spring-boot不同环境配置

  • Spring Boot结合IDEA自带Maven插件如何快速切换profile

    目录 一.前言 二.配置详情 2.1 pom.xml修改 2.2 bootstrap.yml/application.yml修改 一.前言 IDEA是目前 Java 开发者中使用最多的开发工具,它有着简约的设计风格,强大的集成工具,便利的快捷键. 在项目项目整个开发运维周期中,我们的的项目往往需要根据不同的环境,使用不同的文件配置. 比如以下部分: 默认:application.properties/yml 共用配置:application-common.properties/yml 开发环境:

  • Spring Boot在开发过程中常用IDEA插件

    目录 一.Codota 二.AutofillingJavacallarguments 三.GsonFormat 四.RainbowBrackets 五.MavenHelper 六.KeypromoterX 七.换个心水的背景图 本篇为大家介绍一些在开发过程中,经常可以使用到的一些IntelliJ IDEA插件和提高工作效率的方法,关于如何安装插件可以参考本专栏前面两小节的内容. 一.Codota 极其强大的代码自动补全 当我们第一次使用某个类,对该类的某个函数不够熟悉时,可以通过该插件搜索相关用

  • Spring Boot环境下Mybatis Plus的快速应用操作

    一.简介 Mybatis-Plus(简称MP)是一个 Mybatis 的一个增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发.提高效率而生.其愿景是成为Mybatis最好的搭档,将开发效率翻倍,由于受到学习研究深入限制,本例只进行Mybatis Plus在Spring Boot环境下的基本应用(如Select.Insert.Update.Delete等基本操作,其中还包括动态生成组合查询与更新的动态SQL语句). 特性: 无侵入:Mybatis-Plus 在 Mybatis 的

  • ssm项目改造spring boot项目完整步骤

    目录 添加依赖 添加启动类 拷贝项目代码 配置数据库连接池 添加依赖 连接池的自动配置方式 配置 Druid 连接池 集成 MyBatis 添加依赖 配置 Mapper 对象 MyBatis配置属性 事务管理 添加依赖 注解方式 配置切换代理 测试验证 集成 Web 添加依赖 修改端口 目录结构 静态资源的一些处理 前端控制器映射路径配置 集成 Thymeleaf 添加依赖 相关配置 修改模板文件 统一异常处理 框架自带方式 控制器增强器方式 添加注册多个拦截器 系统日志 为什么要用日志 Spr

  • 详解spring Boot Cli的配置和使用

    SpringBootCLI是一个命令行工具,可用于快速搭建基于spring的原型.它支持运行Groovy脚本,这也就意味着你可以使用类似Java的语法,但不用写很多的模板代码. Spring Boot不一定非要配合CLI使用,但它绝对是Spring应用取得进展的最快方式( 你咋不飞上天呢?) . 首先要下载分发包,下载地址如下 https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#getting-started

  • Spring Boot(二)之web综合开发

    上篇文章介绍了Spring boot初级教程:spring boot(一):入门篇,方便大家快速入门.了解实践Spring boot特性:本篇文章接着上篇内容继续为大家介绍spring boot的其它特性(有些未必是spring boot体系桟的功能,但是是spring特别推荐的一些开源技术本文也会介绍),对了这里只是一个大概的介绍,特别详细的使用我们会在其它的文章中来展开说明. web开发 spring boot web开发非常的简单,其中包括常用的json输出.filters.propert

  • Spring Boot打包部署和环境配置详解

    执行命令 yum -y list java* 查看可安装java版本. Failed to set locale, defaulting to C Loaded plugins: fastestmirror base | 3.6 kB 00:00:00 extras | 3.4 kB 00:00:00 updates | 3.4 kB 00:00:00 (1/4): base/7/x86_64/group_gz | 166 kB 00:00:00 (2/4): extras/7/x86_64/p

  • Spring Boot高效数据聚合之道深入讲解

    背景 接口开发是后端开发中最常见的场景, 可能是RESTFul接口, 也可能是RPC接口. 接口开发往往是从各处捞出数据, 然后组装成结果, 特别是那些偏业务的接口. 例如, 我现在需要实现一个接口, 拉取用户基础信息+用户的博客列表+用户的粉丝数据的整合数据, 假设已经有如下三个接口可以使用, 分别用来获取 用户基础信息 ,用户博客列表, 用户的粉丝数据. 用户基础信息 @Service public class UserServiceImpl implements UserService {

  • Spring Boot整合邮件发送与注意事项

    什么是Spring Boot Spring Boot是一个框架,其设计目的是简化Spring应用的初始搭建配置以及开发过程.该框架使用了特定的配置方式,从而使开发人员不在需要定义样板化的配置. Spring Boot的好处 1.配置简单: 2.编码简单: 3.部署简单: 4.监控简单: 概述 Spring Boot下面整合了邮件服务器,使用Spring Boot能够轻松实现邮件发送:整理下最近使用Spring Boot发送邮件和注意事项: Maven包依赖 <dependency> <g

  • Spring Boot项目搭建的两种方式

    什么是Spring Boot Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的框架. 使用 Spring Boot有什么好处 其实就是简单.快速.方便!平时如果我

随机推荐