Maison >Java >javaDidacticiel >Comment changer rapidement de profil à l'aide de Spring Boot combiné au plug-in Maven d'IDEA

Comment changer rapidement de profil à l'aide de Spring Boot combiné au plug-in Maven d'IDEA

王林
王林avant
2023-05-14 08:37:051668parcourir

1. Avant-propos

IDEA est actuellement l'outil de développement le plus utilisé parmi les développeurs Java. Il possède un style de conception simple, des outils intégrés puissants et des touches de raccourci pratiques. 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插件来实现不同配置的切换,每次切换环境只要勾选就行了。

Comment changer rapidement de profil à laide de Spring Boot combiné au plug-in Maven dIDEA

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

Dans tout le cycle de développement et d'exploitation du projet, nos projets doivent souvent utiliser différentes configurations de fichiers selon différents environnements.
🎜Par exemple : 🎜
  • 🎜Par défaut : application.properties/yml🎜
  • 🎜Configuration partagée : application-common.properties/yml🎜
  • 🎜Environnement de développement : application-dev.properties/yml🎜
  • 🎜Environnement de production : application-prod.properties/yml🎜
  • 🎜Environnement de test : application-test.properties/yml🎜
🎜 En utilisation réelle, configurez-le dans le fichier application.yml : 🎜rrreee🎜 ou dans le fichier application.properties : 🎜rrreee🎜set après Spring Boot activera le fichier de configuration de <code>application-${active}.properties/yml. 🎜🎜De cette façon, il suffit de modifier cette configuration à chaque fois que nous devons changer d'environnement. Cependant, cette méthode présente également des inconvénients spécifiques. Par exemple, cette configuration doit être modifiée à chaque changement d'environnement. Après modification, il existe également un risque de mauvaise transmission des fichiers à Git. un seul projet, mais pour les projets de microservices Spring Cloud, l'opération est très gênante. 🎜🎜2. Détails de configuration🎜🎜 Combiné avec le propre plug-in maven de IDEA pour pouvoir basculer entre différentes configurations, cochez simplement la case à chaque fois que vous changez d'environnement. 🎜🎜Comment changer rapidement de profil à l'aide de Spring Boot combiné au plug-in Maven d'IDEA 🎜

Modification 2.1 pom.xml

🎜Ajout du contenu suivant : 🎜rrreee
🎜Le filtre Maven remplacera l'espace réservé @variable name@, vous pouvez visualiser le fichier compilé, l'espace réservé d'origine est remplacé par la valeur de la variable. 🎜🎜<h4>2.2 modification bootstrap.yml/application.yml</h4>rrreee<blockquote>🎜Remarque : L'espace réservé «nom de la variable configuré dans @maven@’, mon nom est <code>profil actifcode>🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer