zoukankan      html  css  js  c++  java
  • SpringBoot:springboot项目jar包如何引入外置配置文件

          

     springboot项目打成jar包,默认读取的classpath路径下的配置文件,config.properties是自定义配置文件。

    如果要把config.properties配置放在jar包外面,方便修改配置,

     1.在启动类或者配置类上添加@PropertySource注解,value参数配置扫描路径,可以为多个,当ignoreResourceNotFound为true时,项目启动的时,先从第一个路径去找配置文件,如果找不到,再从第二个路径去找,以此类推...

    @Data
    @Component
    @ConfigurationProperties
    @PropertySource(value = {"classpath:config.properties","file:${spring.profiles.path}/config.properties"},ignoreResourceNotFound = true)
    public class ConfigBean {
     
     
     
    }

    spring.profiles.path:config.properties文件所在的路,可以在application.yml配置,

    不过为了方便,spring.profiles.path一般在jar包启动的时候传入:

    java -jar xxx.jar --spring.profiles.path=xxx

    这样,jar启动的时候根据传入的参数去读取自定义配置文件

    springboot读取外部配置文件的方法,如下优先级:
    第一种是在执行命令的目录下建config文件夹。(在jar包的同一目录下建config文件夹,执行命令需要在jar包目录下才行),然后把配置文件放到这个文件夹下。
    第二种是直接把配置文件放到jar包的同级目录。
    第三种在classpath下建一个config文件夹,然后把配置文件放进去。
    第四种是在classpath下直接放配置文件。
    springboot默认是优先读取它本身同级目录下的一个config/application.properties 文件的。
    在src/main/resources 文件夹下创建的application.properties 文件的优先级是最低的

    所以springboot启动读取外部配置文件,只需要在外面加一层配置文件覆盖默认的即可,不用修改代码。

    文章转载至:https://blog.csdn.net/wsgsm/article/details/83274362

  • 相关阅读:
    2-5
    2-3
    2-2
    2-1
    1-1
    实验6-1 求数组及其下标
    实验4-2 关于求阶乘的运算
    作业 3-5 switch语句的应用
    作业3-6 查询水果单价
    作业3-4 判断是不是闰年
  • 原文地址:https://www.cnblogs.com/nhdlb/p/11718607.html
Copyright © 2011-2022 走看看