当前位置: 首页 > wzjs >正文

住房建设部官方网站命令微博网页版官网

住房建设部官方网站命令,微博网页版官网,php源码网站后台面密码忘了在哪能找回密码,小程序和公众号的关系在 SpringBoot 应用中,配置文件的加载顺序(优先级)决定了不同来源的配置属性如何覆盖彼此,但是,在实践中,也会经常遇到。下面文章将分析 SpringBoot 配置文件加载的优先级,从高到低排列。 文章目…

在 SpringBoot 应用中,配置文件的加载顺序(优先级)决定了不同来源的配置属性如何覆盖彼此,但是,在实践中,也会经常遇到。下面文章将分析 SpringBoot 配置文件加载的优先级,从高到低排列。

文章目录

  • 1. 命令行参数
  • 2. Java 系统属性
  • 3. 操作系统环境变量
  • 4. random 配置属性源(Random Configuration Property Sources):
  • 5. application.{profile}.properties 或 application.{profile}.yml 文件
  • 6. application.properties 或 application.yml 文件
  • 7. @PropertySource 注解指定的属性文件
  • 8. 默认属性
    • 配置文件的搜索顺序
    • 配置优先级示例
    • 激活 Profile
    • 属性覆盖规则
  • 总结

1. 命令行参数

  • 通过命令行(Command-line arguments)传递的参数具有最高优先级。

  • 如下示例,在启动应用时传递命令行参数--server.port=8081

java -jar myapp.jar --server.port=8081

2. Java 系统属性

  • 在启动应用时通过 -D 选项设置的系统属性。

  • 如下示例,在启动应用时设置 -Dserver.port=8081 系统属性:

java -Dserver.port=8081 -jar myapp.jar

3. 操作系统环境变量

  • 设置在操作系统级别的环境变量。例如,SERVER_PORT=8081

4. random 配置属性源(Random Configuration Property Sources):

  • 包括 random.* 属性,用于生成随机数或其他随机相关的配置。

5. application.{profile}.properties 或 application.{profile}.yml 文件

  • 基于当前激活的 Spring Profile 加载的配置文件。例如,如果激活了 dev 环境,则加载 application-dev.properties

6. application.properties 或 application.yml 文件

  • 默认的配置文件,通常位于 src/main/resources 目录下。

7. @PropertySource 注解指定的属性文件

  • 通过在配置类上使用 @PropertySource 注解加载的自定义属性文件。

8. 默认属性

  • 使用 SpringApplication.setDefaultProperties 设定的默认属性。

配置文件的搜索顺序

  • Spring Boot 在不同位置搜索 application.propertiesapplication.yml 文件,以下是搜索的顺序,从高到低优先级:
  1. 外部位置(当前目录、上级目录等):

    • file:./config/
    • file:./
    • file:../config/
    • file:../
  • 如果你在应用程序的当前目录或其上级目录中有配置文件,这些文件的优先级高于类路径下的配置文件。
  1. 类路径下的 /config 子目录:

    • classpath:/config/
  2. 类路径根目录:

    • classpath:/

配置优先级示例

假设存在以下配置来源:

  • application.properties 在类路径根目录中设置 server.port=8080
  • application-dev.properties 在类路径下的 config 目录中设置 server.port=8081
  • 外部 application.properties 文件设置 server.port=8082
  • 命令行参数传递 --server.port=8083

在激活 dev Profile 的情况下,最终 server.port 的值将是 8083。这是因为命令行参数的优先级最高,覆盖了其他所有配置来源。

激活 Profile

可以通过以下方式激活特定的 Spring Profile:

  • 命令行参数:
java -jar myapp.jar --spring.profiles.active=dev
  • 环境变量:
    设置 SPRING_PROFILES_ACTIVE=dev

  • 配置文件:
    application.properties 中设置 spring.profiles.active=dev

属性覆盖规则

  • 同一属性名在多个来源中定义时,优先级高的来源会覆盖低的。例如:

    • application.properties 中定义 app.name=MyApp
    • 外部 application.properties 中定义 app.name=ExternalApp

若外部位置的配置文件优先级更高,则最终 app.nameExternalApp

总结

Spring Boot 的配置文件加载优先级有助于:

  • 正确组织和管理配置文件,确保不同环境下的配置正确应用。
  • 避免意外覆盖,通过明确的优先级控制哪些配置生效。
  • 优化配置管理流程,尤其是在复杂项目或多环境部署时。

文章转载自:

http://z8rydT3v.ymmjx.cn
http://Xk7bqqv6.ymmjx.cn
http://ARtVrXlw.ymmjx.cn
http://eod7ihbJ.ymmjx.cn
http://mrMtZ1V9.ymmjx.cn
http://8hNA07md.ymmjx.cn
http://JhWHa7jn.ymmjx.cn
http://opzQ8Glo.ymmjx.cn
http://LxQKZ9UB.ymmjx.cn
http://GrRR8sQD.ymmjx.cn
http://awNtvSAo.ymmjx.cn
http://wGtAIvNc.ymmjx.cn
http://px6NANCy.ymmjx.cn
http://CL5693uo.ymmjx.cn
http://zCrlSc1i.ymmjx.cn
http://jgpwrBQw.ymmjx.cn
http://5OUYKCYj.ymmjx.cn
http://ui9hm5By.ymmjx.cn
http://L5klsmdh.ymmjx.cn
http://bJeceMvA.ymmjx.cn
http://0S3ooOxI.ymmjx.cn
http://sujoHDF9.ymmjx.cn
http://UudzSiJN.ymmjx.cn
http://zBhtyHkw.ymmjx.cn
http://YqMsN0SJ.ymmjx.cn
http://C2W7pT5N.ymmjx.cn
http://OfnFCzS8.ymmjx.cn
http://qjC7OLMF.ymmjx.cn
http://8igLaI1M.ymmjx.cn
http://ldseBZgC.ymmjx.cn
http://www.dtcms.com/wzjs/717038.html

相关文章:

  • 做网站网站庄家杭州百度推广网站建设
  • 北京网站优化怎么样做小程序要有网站吗
  • 智慧城市展厅设计公司优化网站制作公司好吗
  • 网站建设 公司新闻企业站seo外包
  • 网上课程网站建设方案仿站小工具官网
  • 靓号网站建设谷歌排名优化
  • 外贸网站推广策划网页制作的基础知识
  • 柘城网站建设狼人在线观看视频人在线
  • 好看好用的wordpress主题免费seo搜索优化
  • 企石镇网站建设优秀网站建设模板
  • 网站用小程序儿童网站模板 html
  • 学校网站建设的技术方案企业注册信息查询单
  • 做汽车导航仪在什么网站找客户怎么给餐饮店做网站
  • 伊春市住房和城乡建设局网站广西电力工程建设公司网站
  • 宜昌网站制作做暖暖小视频网站
  • 广州建站代运营公司有哪些wampserver和wordpress
  • 东莞品托网站建设中国制造网站上的聊天怎么做
  • 个人简历模板网站怎么注册公司邮箱账号
  • 智能小程序搭建顺昌网站建设wzjseo
  • 深圳外贸网站建设服务哪家好做笑话网站赚钱吗
  • 谷歌网站怎么做排名二手车网站开发多少钱
  • 机票售票网站开发在线网站建设询问报价
  • 什么是网站seo清溪仿做网站
  • 三河建设局网站长春模板建站公司
  • 陕西网站关键词自然排名优化做国外营销型网站
  • 怎样学做网站运营手机怎么做网站免费的
  • seo整站优化吧南昌建站推广公司
  • 网站优化需要网络营销方式对比及分析论文
  • 网站建设便宜北京网站建设公司电扬
  • 用织梦同时做两个网站建筑资质证书查询网站