专栏首页互联网开发者交流社区SpringBoot配置文件的加载位置

SpringBoot配置文件的加载位置

1、springboot启动会扫描以下位置的application.properties或者application.yml文件作为SpringBoot的默认配置文件

--file:/config/
--file:/
--classpath:/config/
--classpath:/

优先级由高到低,高优先级的配置会覆盖低优先级的配置; SpringBoot会从这个四个位置全部加载住配置文件;互补配置;

我们还可以通过spring.config.location来改变默认的配置文件位置 项目打包好以后,我们可以使用命令行参数的行驶,启动项目的时候来指定配置文件的新位置;指定的配置文件和默认加载的这些配置文件共同起作用形成互补配置

2、外部配置加载顺序 SpringBoot支持多种外部配置方式 这些方式优先级如下: https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-external-config SpringBoot也可以从以下位置加载配置;优先级从高到低;高优先级的配置覆盖低优先级的配置,所有的配置会行成互补配置; 1.命令行参数 2.来自java:comp/env的JNDI属性 3.Java系统属性(System.getProperties()) 4.操作系统环境变量 5.RandomValuePropertySource配置的random.*属性值 6.jar包 外部的application-{profile}.properties或application.yml(带spring.profile)配置文件 7..jar包 内部的application-{profile}.properties或application.yml(带spring.profile)配置文件 8..jar包 外部的application.properties或application.yml(不带spring.profile)配置文件 9.jar包 内部的application.properties或application.yml(不带spring.profile)配置文件 10.@configuration注解类上的@PropertySource 11.通过SpringApplication.setDefaultProperties指定的默认属性

3、SpringBoo配置-自动配置原理 精髓: 1)、SpringBoot启动会加载大量的自动配置类 2)、我们看我们需要的功能有没有SpringBoot默认写好的自动配置类; 3)、我们再来看这个自动配置类中到底配置了哪些组件;(只要我们要用的组件有,我们不需要再来配置了) 4)、给容器中自动配置类添加组件的时候,会从properties类当中获取某些属性,我们就可以在 配置文件中指定这些属性的值;

xxxAutoConfiguration:自动配置类; 给容器中添加组件 xxxProperties:封装配置文件中相关属性;

4、自动配置类必须在一定的条件下才能生效; 我们怎么知道哪些自动配置类生效; 我们可以通过启用debug:true属性;来让控制台打印 自动配置报告,这样我们就可以很方便的知道哪些自动配置类生效;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SQL触发器实例(上)

    用户1112962
  • SpringBoot配置

    用户1112962
  • SQL基础用法(实例二)

    用户1112962
  • SpringBoot 笔记 ( 二 ):自定义配置

    SpringBoot 笔记 ( 二 ) 1. 配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的: application.propert...

    lwen
  • 超全、超详的Spring Boot配置讲解笔记

    挨踢小子部落阁
  • ELK学习笔记之Logstash不停机自动重载配置文件

    为了可以自动检测配置文件的变动和自动重新加载配置文件,需要在启动的时候使用以下命令:

    Jetpropelledsnake21
  • spring boot框架学习学前掌握之重要注解(4)-通过注解方式读取外部资源配置文件2

    本文是《凯哥陪你学系列-框架学习之spring boot框架学习》中spring boot框架学习学前掌握之重要注解(4)-通过注解方式读取外部资源配置文件2。...

    凯哥Java
  • 近两年火热的微服务springboot不同配置文件详细讲解

    配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;

    好好学java
  • 创建强制配置文件

    此种情况用户在对配置文件做了修改后(例如修改桌面壁纸、修改系统属性)后,注销重新登陆会还原到标准的配置文件配置,其他关于强制配置文件的更多描述可以参见微软官方文...

    SuperDream
  • springBoot配置文件

    配置文件的作用:修改SpringBoot自动配置的默认值;(SpringBoot在底层都给我们自动配置好了)

    HUC思梦

扫码关注云+社区

领取腾讯云代金券