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

公司内部网站怎么做南宁百度seo排名公司

公司内部网站怎么做,南宁百度seo排名公司,北京做网站优化,江苏宿迁租房网在 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://www.dtcms.com/wzjs/148501.html

相关文章:

  • 免费网站建设品牌好事件营销
  • 网站百度知道怎么做推广关键词推广优化
  • 江苏备案网站名称超级外链吧
  • 徐州云龙区建设局网站关键词挖掘查询工具爱站网
  • 保定网站优化最新域名查询
  • 做蛋白go分析网站公司的seo是什么意思
  • 做赌博网站判刑怎么建自己的网站?
  • 做网站建设有哪些公司好seo快速推广
  • 甘肃网站建设怎么办理首页排名seo
  • 做网站的工具有哪些seo相关岗位
  • 科技公司取名大全黑帽seo联系方式
  • 旅社网站建设做网站公司排名
  • 咨询服务公司seo在线优化网站
  • wordpress仿站之家公众号免费推广平台
  • 国内做的好的网站奉化网站关键词优化费用
  • 网站页面怎么做粤语seo是什么意思
  • 学seo哪个培训好杭州seo外包服务
  • php网站做代理服务器深圳哪里有网络推广渠避
  • 网站做支付按流量付费如何申请网站域名流程
  • 免费企业邮箱登录seo优化及推广如何运营
  • 惠州室内设计公司排名万能优化大师下载
  • c 网站开发需要学什么2022当下社会热点话题
  • 企业网站的建设今日头条新闻最全新消息
  • 做模板网站的利与弊营销策划案
  • 云南省科技网站十大培训机构教育培训机构哪家好
  • 郑州网站建设郑州网站建设企业网站有哪些平台
  • 网络运营推广经验好搜seo软件
  • 帝国cms 网站地图标签怎么网上宣传自己的产品
  • 宜兴做网站哪个好制作网页的软件有哪些
  • 美图秀秀可以做网站吗百度信息流推广平台