package com.jeryfu.servlet.servlet.properties;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Properties;
public class PropertiesUtils {
private Properties properties;
/**
* 获取properties
* @param fileName 相对于ClassPath下的路径
* @return
*/
public Properties getProperties(String fileName){
InputStream in = this.getClass().getClassLoader().getResourceAsStream(fileName);
properties = new Properties();
try {
properties.load(in);
} catch (IOException e) {
//logger.error("读取【" + fileName + "】配置文件异常. . . ");
e.printStackTrace();
}finally{
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return properties;
}
/**
* 遍历properties, propertyNames()方法的使用
* @param properties
*/
@SuppressWarnings("unchecked")
public void forEach_1(Properties properties){
Enumeration<String> keyEnum = (Enumeration<String>) properties.propertyNames();
while(keyEnum.hasMoreElements()){
String key = keyEnum.nextElement();
String value = properties.getProperty(key);
System.out.println(key + " = " + value);
}
}
/**
* 遍历properties, stringPropertyNames()方法的使用
* @param properties
*/
public void forEach_2(Properties properties){
Iterator<String> iterator = properties.stringPropertyNames().iterator();
while(iterator.hasNext()){
String key = iterator.next();
String value = properties.getProperty(key);
System.out.println(key + " = " + value);
}
}
/**
* 遍历properties, entrySet()方法的使用
* @param properties
*/
public void forEach_3(Properties properties){
Iterator<Entry<Object,Object>> entrySet= properties.entrySet().iterator();
while (entrySet.hasNext()) {
Entry<Object, Object> entry = (Entry<Object, Object>) entrySet.next();
String key = (String) entry.getKey();
String value = (String) entry.getValue();
System.out.println(key + " = " + value);
}
}
/**
* 获取properties下所有的values
* @param properties
*/
public void getValues(Properties properties){
Enumeration<Object> keyEnum = properties.elements();
while(keyEnum.hasMoreElements()){
String value = (String) keyEnum.nextElement();
System.out.println(value);
}
}
public static void main(String[] args) {
PropertiesUtils pu = new PropertiesUtils();
// properties 文件地址:在com.pro包下面
Properties properties = pu.getProperties("com/pro/test.properties");
// 在文件里面有行数据:jdbc.url = oracle.jdbc.driver.OracleDriver
String url = properties.getProperty("jdbc.url");
System.out.println(url);
pu.forEach_1(properties);
pu.forEach_2(properties);
pu.forEach_3(properties);
}
}
Properties 类
最新推荐文章于 2021-02-17 00:01:08 发布