在开发中对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. CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)

    服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + Nginx + MySQL + PHP +SVN),其中svn是用来代替ftp,方便开发中调试同步代码 相关目录:所有软件 ...

  2. 20172304 实验二 《Java面向对象程序设计》 实验报告

    20172304 实验二 <Java面向对象程序设计> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1723班 学生姓名:段志轩 学生学号:20172304 实验时间 ...

  3. GPS数据包格式及数据包解析

    GPS数据包解析 GPS数据包解析 目的 GPS数据类型及格式 数据格式 数据解释 解析代码 结构体定义 GPRMC解析函数 GPGGA解析函数 测试样例输出 gps数据包格式 gps数据解析 车联网 ...

  4. 深度学习基础系列(七)| Batch Normalization

    Batch Normalization(批量标准化,简称BN)是近些年来深度学习优化中一个重要的手段.BN能带来如下优点: 加速训练过程: 可以使用较大的学习率: 允许在深层网络中使用sigmoid这 ...

  5. Java 中类的初始化过程

    先来一张 JVM 中的内存模型 . 在Java 虚拟机原理这本书中介绍了类会被初始化的 5 种情况 . 1 遇到 new getstatic putstatic 和 invokestatic 这 4 ...

  6. 美团在O2O场景下的广告营销

    美团作为中国最大的在线本地生活服务平台,覆盖了餐饮.酒店.旅行.休闲娱乐.外卖配送等方方面面生活场景,连接了数亿用户和数百万商户.如何帮助本地商户开展在线营销,使得他们能快速有效地触达目标用户群体提升 ...

  7. Javascript中call方法和apply方法用法和区别

    第一次在博客园上面写博客,知识因为看书的时候发现了一些有意思的知识,顺便查了一下资料,就发到博客上来了,希望对大家有点帮助. 连续几天阅读<javascript高级程序设计>这本书了,逐渐 ...

  8. 决策树算法(ID3)

    Day Outlook Temperature Humidity Wind PlayTennis 1 Sunny Hot High Weak No 2 Sunny Hot High Strong No ...

  9. 什么是DHTML?

    DHTML是近年来网络发展进程中最振奋人心也最具实用性的创新之一.它是一种通过各种技术的综合发展而得以实现的概念(当然,不同的浏览器,实现的程度也不同),这些技术包括Javascript, VBScr ...

  10. CF1042C Array Product 分类讨论+贪心

    考虑有无负数(负数的个数为奇视作“有”,否则为“无”)和有无零 无负数无零,全部合并即可 无负数有零,那么把零合并起来,删掉零 有负数无零,把最大的负数找出来,删掉,合并剩余的数 有负数有零,把零和最 ...