读取jar包内配置文件

public class Config {

  private static Properties properties;
  private static Logger logger = Logger.getLogger(Config.class);
  static {
   try {
    PropertyConfigurator.configure(System.getProperty("user.dir")
      + "/config/log4j.properties");
    properties = new Properties();
    // 读取SRC下配置文件 --- 属于读取内部文件
    // properties.load(Config.class.getResourceAsStream("/init.properties"));
    // 读取系统外配置文件 (即Jar包外文件) --- 外部工程引用该Jar包时需要在工程下创建config目录存放配置文件
    String filePath = System.getProperty("user.dir")
    + "/config/init.properties";
    InputStream in = new BufferedInputStream(new FileInputStream(filePath));
    properties.load(in);
   } catch (IOException e) {
             logger.error("读取配置信息出错!", e);
   }
  }
  public static String getObject(String prepKey) {
            return properties.getProperty(prepKey);
  }

  public static void main(String[] agrs) {
           logger.info(Config.getObject("testsql"));
  }
 }

System.getProperty("user.dir") 获得项目的绝对路径,然后拼装配置文件的路径。

  

原文地址:https://www.cnblogs.com/go4mi/p/8124668.html