zoukankan      html  css  js  c++  java
  • Spring Boot自动扩展属性

    1.概述

    在本文中,我们将探讨Spring通过Maven和Gradle构建方法提供的属性扩展机制。

    2. Maven

    2.1.默认配置

    对于使用spring-boot-starter-parent的 Maven项目,不需要额外的配置来使用属性扩展:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.4.RELEASE</version>
    </parent>
     

    现在我们可以使用@ ... @占位符扩展项目的属性以下是我们如何将项目从Maven中获取的版本保存到我们的属性中的示例:

    expanded.project.version=@project.version@
    expanded.project.property=@custom.property@
     

    我们只能在匹配这些模式的配置文件中使用这些扩展:

    • ** /application* .yml
    • ** /application* .yaml
    • ** /application* .properties

    2.2.手动配置

    如果没有spring-boot-starter-parent parent,我们需要手动配置这个过滤和扩展。我们需要在我们的pom.xml文件的< build>部分中包含resources元素

    <resources>
        <resource>
            <directory>${basedir}/src/main/resources</directory>
            <filtering>true</filtering>
            <includes>
                <include>**/application*.yml</include>
                <include>**/application*.yaml</include>
                <include>**/application*.properties</include>
             </includes>
        </resource>
    </resources>   
     

    并在< plugins>中

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.7</version>
        <configuration>
            <delimiters>
                <delimiter>@</delimiter>
            </delimiters>
            <useDefaultDelimiters>false</useDefaultDelimiters>
        </configuration>
    </plugin>
     

    如果需要使用${variable.name}类型的标准占位符,我们需要将useDefaultDelimeters设置true,并且您的application.properties将如下所示:

    expanded.project.version=${project.version}
    expanded.project.property=${custom.property}

    3.结论

    在本快速教程中,我们了解了如何使用Maven构建方法自动扩展Spring Boot属性。

  • 相关阅读:
    2018-2019-20175307实验一《Java开发环境的熟悉》实验报告
    20175307《Java程序设计》第5周学习总结
    团队作业第二次——团队Github实战训练
    团队作业第一次—团队展示和项目展示
    第01组 团队Git现场编程实战
    2019 SDN上机第1次作业
    第01组 团队项目-需求分析报告
    团队项目-选题报告
    第二次结对编程作业
    第1组 团队展示
  • 原文地址:https://www.cnblogs.com/gc65/p/10618443.html
Copyright © 2011-2022 走看看