zoukankan      html  css  js  c++  java
  • 如何读取jar包外的properties文件和log4j.properties

     

    一般在项目中使用properties配置文件的时候都将相关的properties文件放在src目录下,在将该app打包生成jar后,相应的properties配置文件生...

    一般在项目中使用properties配置文件的时候都将相关的properties文件放在src目录下,在将该app打包生成jar后,相应的properties配置文件生成在jar包中,这样的话要修改配置文件又要重新打jar包,那是相当的麻烦。 

    既然这么麻烦,你肯定想将配置文件放在其他的目录下,生成的jar包内不包含相应的配置文件,修改配置文件无需重新打包,没错,下面就是一种解决方案了。 

    读取jar包内配置文件:
     

    1. InputStream in = this.getClass().getClassLoader().getResourceAsStream("/configfilename.properties"); 

    读取jar包外配置文件:
     

    1. String filePath = System.getProperty("user.dir") + "/conf/configfilename.properties";    
    2. InputStream in = new BufferedInputStream(new FileInputStream(filePath));   

    另外,如果app中使用到log4j.properties文件,默认的存放路径是src/log4j.properties,同上面一样,我想把log4j.properties放在其他目录中,这样一来,在修改log4j配置文件的时候无需重新打jar包。 

    在main函数第一行添加如下代码:

    1. PropertyConfigurator.configure(System.getProperty("user.dir") + "/conf/log4j.properties"); 
  • 相关阅读:
    JHipster
    Integrating Jenkins and Apache Tomcat for Continuous Deployment
    What is the difference between apache tomcat deployer and core version?
    JEECG--去掉(增加)登陆页面验证码功能
    Protobuf一例
    进程间通信之POSIX信号量
    进程间通信之共享存储
    进程间通信之信号量
    进程间通信之消息队列
    进程间通信之XSI IPC
  • 原文地址:https://www.cnblogs.com/williamjie/p/9353306.html
Copyright © 2011-2022 走看看