亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

maven中profile的使用

 更新時(shí)間:2023年04月28日 11:26:23   作者:天道有情戰(zhàn)天下  
本文主要介紹了maven中profile的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一個(gè)項(xiàng)目可能會(huì)有不同的環(huán)境,例如dev/stating/prod等,不同的環(huán)境的配置文件是不同的,如何根據(jù)環(huán)境快速的切換到對(duì)應(yīng)的配置文件很重要。

在maven和 spring中都有一個(gè)profile的概念,下面分別說(shuō)

一. 在maven中的pom文件中的profile的作用是根據(jù)不同的環(huán)境將對(duì)應(yīng)的環(huán)境變量設(shè)置到項(xiàng)目中,如下例子

步驟一:在pom文件中寫(xiě)profile

<profiles>
        <profile>
            <!-- 開(kāi)發(fā)環(huán)境 -->
            <id>local</id>
            <properties>
                <env>local</env>
                <profileName>local</profileName>
                <group>LOCAL_GROUP</group>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <!-- 聯(lián)調(diào)開(kāi)發(fā)環(huán)境 -->
            <id>dev</id>
            <properties>
                <env>dev</env>
                <profileName>dev</profileName>
                <group>DEV_GROUP</group>
            </properties>
        </profile>
        <profile>
            <!-- 測(cè)試環(huán)境 -->
            <id>test</id>
            <properties>
                <env>test</env>
                <profileName>test</profileName>
                <group>TEST_GROUP</group>
            </properties>
        </profile>
        <profile>
            <!-- 預(yù)發(fā)環(huán)境  -->
            <id>pre</id>
            <properties>
                <env>pre</env>
                <profileName>pre</profileName>
                <group>PRE_GROUP</group>
            </properties>
        </profile>
        <profile>
            <!-- 生產(chǎn)環(huán)境  -->
            <id>prod</id>
            <properties>
                <env>prod</env>
                <profileName>prod</profileName>
                <group>PROD_GROUP</group>
            </properties>
        </profile>
    </profiles>

步驟二:設(shè)置 resources的位置和filtering為true

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>

filtering屬性為true時(shí),主要用來(lái)替換項(xiàng)目中資源文件(.xml、.properties)當(dāng)中由 ${...} 標(biāo)記的變量

步驟三:激活profile

以下兩種方式可以激活:

a. mvn package時(shí)使用-P參數(shù)來(lái)指定profile,例如mvn package -P dev,這樣就會(huì)把dev 這個(gè)profile中的變量設(shè)置到項(xiàng)目對(duì)應(yīng)的變量里面,通常是通過(guò)${}和@@來(lái)注入屬性

b.在對(duì)應(yīng)的profile標(biāo)簽里面寫(xiě)入如下標(biāo)簽,代表默認(rèn)激活的profile  <activeByDefault>true</activeByDefault> 

二. spring中的profile

Spring中有個(gè)注解叫做@Profile("dev"),這個(gè)注解只有在對(duì)應(yīng)的profile激活才能使用,這個(gè)profile和上面的maven中的沒(méi)關(guān)系,可以通過(guò)如下方式激活

一、啟動(dòng)Java應(yīng)用時(shí),通過(guò)-D傳入系統(tǒng)參數(shù)

-Dspring.profiles.active=dev  

二、如果是web環(huán)境,可以通過(guò)上下文初始化參數(shù)設(shè)置

<context-param>  
    <param-name>spring.profiles.active</param-name>  
    <param-value>dev</param-value>  
</context-param>  

三 、通過(guò)自定義添加PropertySource

Map<String, Object> map = new HashMap<String, Object>();  
map.put("spring.profiles.active", "dev");  
MapPropertySource propertySource = new MapPropertySource("map", map);  
env.getPropertySources().addFirst(propertySource);  

四、直接設(shè)置Profile

env.setActiveProfiles("dev", "test"); 

五、通過(guò)操作系統(tǒng)的環(huán)境變量來(lái)激活

在Spring Boot項(xiàng)目中,如果事先在OS環(huán)境變量中定義了“SPRING_PROFILES_ACTIVE”,則會(huì)采用此處定義的配置文件

以上方式都可以設(shè)置多個(gè)profile,多個(gè)之間通過(guò)如逗號(hào)/分號(hào)等分隔。 

到此這篇關(guān)于maven中profile的使用的文章就介紹到這了,更多相關(guān)maven profile內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論