在开发中对properties文件的操作还是蛮常常的。所以总结了几种操作方法,为后面的开发能够进行參考。

1、通过java.util.ResourceBundle类来读取

这边測试用到了枚举类进行传入文件的key值,然后获取value,能够进行灵活的配置。

通过这样的方式读取properties文件不须要加.properties后缀名,仅仅需文件名称就可以,假设有放在某一个包下,要加包的限定名。如放在com.frame.util包下,则要路径要用com/fram/util

config.properties:

CONFIGFILE_DIR=F:\\configDir       //两个斜杠是转义用

枚举类ConfigFileEnum.java

public enum ConfigFileEnum {
CONFIGFILE_DIR("CONFIGFILE_DIR");
private String name = null; ConfigFileEnum(String name){
this.name = name;
}
public String getName(){
return this.name;
} }

读取配置文件类ConfigUtil.java

public class ConfigUtil {
private static ResourceBundle resourceBundle = ResourceBundle.getBundle("config", Locale.ENGLISH);
public static String getConfigKey(ConfigFileEnum configFileEnum){
return resourceBundle.getString(configFileEnum.getName());
}
}

測试:

	@Test
public void testProperties(){
String key = ConfigUtil.getConfigKey(ConfigFileEnum.CONFIGFILE_DIR);
System.out.println(key);
}

2、通过jdk提供的java.util.Properties类

在使用properties文件之前,还须要载入属性文件,它提供了两个方法:load和loadFromXML。

load有两个方法的重载:load(InputStream inStream)、load(Reader reader)。所以。可依据不同的方式来载入属性文件。

下面提供三种方法:

1、通过当前类载入器的getResourceAsStream方法获取

InputStream inStream = TestHttpClient.class.getClassLoader().getResourceAsStream("config.properties");

2、从文件获取

InputStream inStream = new FileInputStream(new File("D:\\dir\\Frame\\src\\config.properties"));  

3、通过类载入器实现,和第一种一样

InputStream inStream =  ClassLoader.getSystemResourceAsStream("config.properties");

測试:

	@Test
public void testProperties() throws IOException{
Properties p = new Properties();
InputStream inStream = TestHttpClient.class.getClassLoader().getResourceAsStream("config.properties");
p.load(inStream);
System.out.println(p.get("CONFIGFILE_DIR"));
}

Java读取properties配置文件经常用法的更多相关文章

  1. java读取properties配置文件总结

    java读取properties配置文件总结 在日常项目开发和学习中,我们不免会经常用到.propeties配置文件,例如数据库c3p0连接池的配置等.而我们经常读取配置文件的方法有以下两种: (1) ...

  2. java读取properties配置文件信息

    一.Java Properties类 Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置 ...

  3. Java 读取 .properties 配置文件的几种方式

    Java 开发中,需要将一些易变的配置参数放置再 XML 配置文件或者 properties 配置文件中.然而 XML 配置文件需要通过 DOM 或 SAX 方式解析,而读取 properties 配 ...

  4. java读取.properties配置文件的几种方法

    读取.properties配置文件在实际的开发中使用的很多,总结了一下,有以下几种方法(仅仅是我知道的):一.通过jdk提供的java.util.Properties类.此类继承自java.util. ...

  5. Java 读取 .properties 配置文件

    java 开发中,经常要读取 properties 配置文件,下面介绍几种读取方式: 1.基于 InputStream 读取配置文件 该方式的优点在于可以读取任意路径下的配置文件 Properties ...

  6. Java读取properties配置文件工具类

    1.   PropertyUtils.java package javax.utils; import java.io.InputStream; import java.util.Properties ...

  7. 【转载】java读取.properties配置文件的几种方法

    读取.properties配置文件在实际的开发中使用的很多,总结了一下,有以下几种方法(仅仅是我知道的):一.通过jdk提供的java.util.Properties类.此类继承自java.util. ...

  8. Java读取Properties配置文件

    1.Properties类与Properties配置文件 Properties类继承自Hashtable类并且实现了Map接口,使用键值对的形式来保存属性集.不过Properties的键和值都是字符串 ...

  9. java读取properties配置文件的方法

    app.properties mail.smtp.host=smtp.163.com mail.transport.protocol=smtp import java.io.InputStream; ...

随机推荐

  1. Linux 常用基本命令及应用技巧

    需要pdf 版 联系我 我的文件中有目录一.Linux 的常用基本命令................................................................. ...

  2. ip获取所在城市名称等信息接口,及函数

    函数: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 ...

  3. PHP各种经典算法

    <?  //--------------------  // 基本数据结构算法 //--------------------  //二分查找(数组里查找某个元素)  function bin_s ...

  4. ACM 水果 hdu 1263 一题多解

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1263 文章末有相应的一些测试数据供参考. 传统的数组解题方式 思路一: 三种属性的数据放在一个结构体里面, ...

  5. 机器学习之路: python 支持向量机 LinearSVC 手写字体识别

    使用python3 学习sklearn中支持向量机api的使用 可以来到我的git下载源代码:https://github.com/linyi0604/MachineLearning # 导入手写字体 ...

  6. Ubuntu安装redis和redis-php扩展

    通过apt-get安装的redis使用方法 sudo apt-get install redis-server sudo apt-get install php-redis vim /etc/redi ...

  7. hdu 4463 第37届ACM/ICPC杭州赛区K题 最小生成树

    题意:给坐标系上的一些点,其中有两个点已经连了一条边,求最小生成树的值 将已连接的两点权值置为0,这样一定能加入最小生成树里 最后的结果加上这两点的距离即为所求 #include<cstdio& ...

  8. 通过IP获取所在城市

    <script type="text/javascript"> var map = new BMap.Map("allmap"); var poin ...

  9. php-curl小记

    用jQuery: $.ajax({ url:url, type:"POST", data:data, contentType:"application/json; cha ...

  10. SCSI Pass-Through Interface Tool

    http://code.msdn.microsoft.com/SCSI-Pass-Through-a906ceef/sourcecode?fileId=59048&pathId=1919073 ...