• spring.profiles.active=@profiles.active@用法


    1.引言

    当在多配置文件中,需要切换配置文件时,通常的做法都是修改激活的文件名称,而spring.profiles.active=@profiles.active@ 是配合 maven profile进行选择不同配置文件进行启动,可以避免修改文件,而在maven打包是指定使用哪个配置文件。

    2.实战演练

    2.1环境准备

    首先使用IDEA创建一个SpringBoot的项目

    2.2配置pom

    假设目前有三个环境dev、test和prod,那么需要在pom.xml进行配置:

     <build>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                    <filtering>true</filtering>
                </resource>
            </resources>
     </build>
     <profiles>
            <profile>
                <!-- 本地开发环境 -->
                <id>dev</id>
                <properties>
                    <profiles.active>dev</profiles.active>
                </properties>
                <activation>
                    <!-- 是否默认激活 -->
                    <activeByDefault>true</activeByDefault>
                </activation>
            </profile>
            <profile>
                <!-- 测试环境 -->
                <id>test</id>
                <properties>
                    <profiles.active>test</profiles.active>
                </properties>
                <activation>
                    <activeByDefault>false</activeByDefault>
                </activation>
            </profile>
            <profile>
                <!-- 生产环境 -->
                <id>prod</id>
                <properties>
                    <profiles.active>prod</profiles.active>
                </properties>
                <activation>
                    <activeByDefault>false</activeByDefault>
                </activation>
            </profile>
        </profiles>    

    上述默认使用dev配置。配置后需要点击刷新按钮来刷新maven,然后会看到如下的几种选择:

    2.3创建配置文件(properties类型)

    首先创建application.properties文件,其内容为:

    spring.profiles.active=@profiles.active@

    创建application-dev.properties:

    server.port=8888

    创建application-test.properties:

    server.port=9999

    创建application-prod.properties:

    server.port=8080

    启动项目,查看控制台启动日志,启动端口是8888,然后关闭。

    在Propfiles中勾选test,取消勾选dev,再启动项目,此时启动端口是9999,其他环境同理,打包也是类似的方式。

    注意:若切换时还是使用上一次环境或报错,那么需要刷新一下maven再重启项目。

     若是maven命令打包,其方式如下:

    mvn clean package -P prod

     使用-P指定使用的配置文件即可。无论是自动打包还是使用maven命令打包,最终的环境名称会配置给application.properties中,即:

    spring.profiles.active=prod //这里假设是prod环境打包的

    也就是说,免去了频繁修改配置文件的操作。

    2.4创建配置文件(yml类型)

    当然还有另一种yml方式配置,目前在使用时发现有问题,待更新!

    就是这么简单,你学废了吗?感觉有用的话,给笔者点个赞吧 !
  • 相关阅读:
    2020-2-1 最大最小公倍数
    网编课设
    ccf第二题系列知识点(小白学习笔记)
    小白学webservice
    广度优先搜索BFS
    elk学习系列(一)——Windows安装
    2019课设---基于微信小程序的食堂订餐送餐系统设计 【构思】(25)
    2019课设---基于微信小程序的食堂订餐送餐系统设计 【构思】(24)
    2019课设---基于微信小程序的食堂订餐送餐系统设计 【构思】(23)
    2019课设---基于微信小程序的食堂订餐送餐系统设计 【构思】(22)
  • 原文地址:https://www.cnblogs.com/zys2019/p/14933839.html
Copyright © 2020-2023  润新知