Springboot加载配置文件优先级以及类路径和项目路径区别

本文详细介绍了Spring Boot应用中配置文件的加载顺序,从当前路径的config目录到类路径,以及如何使用@PropertySource注解加载类路径下的配置。同时提供了获取当前类路径和项目路径的Java代码示例。
摘要由CSDN通过智能技术生成

Spring官方文档地址:

   https://docs.spring.io/spring-boot/docs/2.1.3.RELEASE/reference/htmlsingle/#getting-started-first-application-pom

从官网可以看到Spring默认加载配置文件优先级为如下:

  1. 当前路径config
  2. 当前路径
  3. 类路径config
  4. 类路径

即前面的配置文件会覆盖后面的配置文件(当前路径指项目路径)

类路径(主要针对配置文件来讲)

   编译环境:就是resource下的路径,因为在项目编译后会自动将resources的文件放到target/class下面
    运行环境:指target/class
    jar包环境:一般是jar包中的\BOOT-INF\classes!

当前路径

编译环境和运行环境都指的是同一个路径,即当前项目的根路径,也就是项目名称所在的路径
jar包环境:jar包所在的当前路径.

注意:
@PropertySource注解 默认加载的路径是类路径.

获取类路径和当前项目路径的简单代码.
//获取当前类路径

String classPath= this.getClass().getResource(“/”).getPath();
System.out.println(“类路径为:”+classPath);
//获取当前项目路径
String programPath = System.getProperty(“user.dir”);
System.out.println(“当前项目路径为:”+programPath);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员bling

义父,感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值