java.util.Properties 简单用法

[align=center][color=red]1. 认识properties文件[/color][/align]
1、properties文件是一个文本文件
2、properties文件的语法有两种,一种是注释,一种属性配置。
注 释:前面加上#号
属性配置:以“键=值”的方式书写一个属性的配置信息。
3、properties文件的一个属性配置信息值可以换行,但键不可以换行。值换行用“\”表示。
4、properties的属性配置键值前后的空格在解析时候会被忽略。
5、properties文件可以只有键而没有值。也可以仅有键和等号而没有值,但无论如何一个属性配置不能没有键。


#格式良好的properties文件
aaa=111
bbb=222


[align=center][color=red]2. 解读java.util.Properties类[/color][/align]

java.lang.Object
java.util.Dictionary<K,V>
java.util.Hashtable<Object,Object>
java.util.Properties

从层次机构看,Properties类实现了Map接口,因为HashTable实现了Map接口,因此Properties类本质上是一种简单的Map容器。
实际上,Properties类本身表示了对一种Map结构的操作。properties文件本身就表示了一个“键值对”的集合。因此,Properties类属于集合容器的家族,在使用前应该创建一个Properties的容器,实际上就是创建一个默认不带参数的Properties对象。以后通过别的方式给里面添加“键值对”。


[align=center][color=red]3. 常用方法:[/color][/align]
在web项目中,常用如下方法:

/**
*
*/
package com.ruijie.test;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
*
*/
public class Test {

/**
*
* @Description : 加载一个Properties 资源
* 采用下面的方法时候,路径是在WEB-INF\classes(对应的src目录)开始
* 如果要到上级目录则可以用过../
*/
public static void getProperties(){
InputStream in = Test.class.getClassLoader().getResourceAsStream("log4j.properties");
Properties properties = new Properties();
try {
// 加载流
properties.load(in);

// 获得数据
properties.getProperty("log4j.rootLogger");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}

}

}

public static void main(String[] args) {
getProperties();
}
}





如果直接采用

// 这个将相对于tomcat的bin目录
Properties properties = getConfigProperties("config.properties");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值