Java properties配置文件工具类
2017-02-08 16:17
381 查看
/* * Copyright (c) 2017. Panteng.Co.Ltd All rights reserved */ import org.apache.log4j.Logger; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.util.Properties; /** * @author panteng * @description * @date 17-2-7. */ public class PropertiesUtil { public static Logger logger = Logger.getLogger(PropertiesUtil.class); public static Properties pros = new Properties(); static { // 获取配置文件所在文件夹 String configDir = PropertiesUtil.class.getClassLoader().getResource("").getPath(); // 遍历文件夹下面的所有配置文件 File dir = new File(configDir); File[] files = dir.listFiles(); for (int i = 0; i < files.length; i++) { if (files[i].getName().indexOf(".properties") > -1) { InputStream path = PropertiesUtil.class.getClassLoader().getResourceAsStream(files[i].getName()); try { pros.load(path); } catch (IOException e) { logger.error("{}", e); } } } } }
对于打包成的jar包文件,需要读取jar里面的配置文件时,就会出现问题!对应修改如下:
/* * Copyright (c) 2017. Xiaomi.Co.Ltd All rights reserved */ package com.xiaomi.weather.utils; import org.apache.log4j.Logger; import java.io.*; import java.util.Properties; /** * @author panteng * @description * @date 17-2-7. */ public class PropertiesUtil { public static Logger logger = Logger.getLogger(PropertiesUtil.class); public static Properties pros = new Properties(); static { // 获取配置文件所在文件夹 String configDir = PropertiesUtil.class.getClassLoader().getResource("").getPath(); if (configDir.indexOf(".jar!") > -1) {//jar包 try { InputStream ips = PropertiesUtil.class.getResourceAsStream("/service.properties"); BufferedReader ipss = new BufferedReader(new InputStreamReader(ips)); pros.load(ipss); System.out.println("============================XXX" + pros.get("mongoHost")); } catch (Exception e) { e.printStackTrace(); } } else { // 遍历文件夹下面的所有配置文件 File dir = new File(configDir); File[] files = dir.listFiles(); for (int i = 0; i < files.length; i++) { if (files[i].getName().indexOf(".properties") > -1) { InputStream path = PropertiesUtil.class.getClassLoader().getResourceAsStream(files[i].getName()); try { pros.load(path); } catch (IOException e) { logger.error("{}", e); } } } } } }
获取jar内配置文件(scala):
val regularInputStream = this.getClass.getClassLoader.getResourceAsStream("regular.txt") val regularBr = new BufferedReader(new InputStreamReader(regularInputStream)) var line: String = null while ( { line = regularBr.readLine(); line != null }) { val i1 = line.indexOf("\t") val i2 = line.indexOf("\t", i1 + 1) val i3 = line.indexOf("\t", i2 + 1) val i4 = line.indexOf("\t", i3 + 1) val i5 = line.indexOf("\t", i4 + 1) descriptions.append(new Regex(line.substring(i4 + 1, i5))) appIds.append(line.substring(i1 + 1, i2)) titles.append(null) }
相关文章推荐
- Eclipse和Tomcat和Java读取配置文件工具类PropertiesUtil
- java通过配置文件jdbc.properties链接Oracle数据库工具类
- java工具类开发之日期工具类DateUtils和读取属性配置文件工具类PropertiesUtils
- java工具类获取properties文件的配置
- java 数据库读取工具类(读取config.properties配置文件)
- 方法:一个简单的读取配置文件.properties的工具类 JAVA
- Java对properties配置文件操作工具类
- java读取properties配置文件工具类
- Java之数据库MYSQL、JDBC工具类、properties配置文件
- java.util.properties工具类操作properties配置文件
- java 数据库读取工具类(读取config.properties配置文件)[包含线程安全]
- java 数据库读取工具类(读取config.properties配置文件)
- java 数据库读取工具类(读取config.properties配置文件)
- 【java】获取properties配置文件信息工具类
- java读取.properties配置文件 的几种方式
- Java中封装配置文件(1)-使用Properties (转)
- 利用Java的Properties 类读取配置文件信息
- Java的Properties配置文件用法
- java根据properties配置文件来实现功能模块的动态切换
- Java Properties 类读取配置文件信息