Maison  >  Article  >  Java  >  Java的后台读取配置文件

Java的后台读取配置文件

巴扎黑
巴扎黑original
2016-12-10 09:44:461976parcourir

前几天开发时遇到一个问题,在后台读取配置文件的时候无法读取属性值,于是上网查了查,现在在这分享给大家, 

先附上代码吧: 



包com.shafei.util; 
进口java.io.BufferedInputStream中; 
进口java.io.FileInputStream中; 
进口java.io.FileOutputStream中; 
进口的java.io.InputStream; 
进口java.io.OutputStream中; 
进口的java.util.Enumeration; 
进口java.util.Properties; 
进口org.apache.log4j.Logger; 
公共类PropertieUtil { 
私有静态记录器记录= Logger.getLogger(PropertieUtil.class); 
私人PropertieUtil(){ 

/ ** 
*读取配置文件某属性 
* / 
公共静态字符串readValue(字符串文件路径,字符串键){ 
属性道具=新特性(); 
尝试{ 
//注意路径以/开始,没有则处理 
如果(filePath.startsWith(“/”)!) 
文件路径=“/”+文件路径; 
InputStream的时间= PropertieUtil.class.getResourceAsStream(文件路径); 
props.load(在); 
字符串值= props.getProperty(键); 
返回值; 
}赶上(例外五){ 
logger.error(E); 
返回null; 


/ ** 
*打印配置文件全部内容(文件路径,配置文件名,如果有路径,道具/ test.properties) 
* / 
公共静态无效readProperties(字符串文件路径){ 
属性道具=新特性(); 
尝试{ 
//注意路径以/开始,没有则处理 
如果(filePath.startsWith(“/”)!) 
文件路径=“/”+文件路径; 
InputStream的时间= PropertieUtil.class.getResourceAsStream(文件路径); 
props.load(在); 
枚举EN = props.propertyNames()<?>; 
//遍历打印 
的同时(en.hasMoreElements()){ 
字符串键=(字符串)en.nextElement(); 
String属性= props.getProperty(键); 
的System.out.println(物业); 
logger.info(键+“:”+物业); 

}赶上(例外五){ 
logger.error(E); 


/ ** 
*将值写入配置文件 
* / 
公共静态无效writeProperties(字符串文件名,字符串参数名称,字符串的parameterValue)抛出异常{ 
//本地测试特别注意,如果是Maven的项目,请到\目标目录下查看文件,而不是源代码下 
//注意路径不能加/了,加了则移除掉 
,如果(fileName.startsWith(“/”)) 
fileName.substring(1); 
字符串文件路径= PropertieUtil.class.getResource(“/”)的getPath()+文件名。 
//获取配置文件 
属性PPS =新特性(); 
在的InputStream =新的BufferedInputStream(新的FileInputStream(文件路径)); 
pps.load(在); 
附寄(); 
出的OutputStream =新的FileOutputStream(文件路径); 
//设置配置名称和值 
pps.setProperty(参数名称,的parameterValue); 
//注释配置等于文件的注释 
pps.store(满分,“更新”+参数名称+“名”); 
了out.flush(); 
out.close(); 

公共静态无效的主要(字串[] args)抛出异常{ 
readProperties(“jdbc.properties”); 
logger.info(readValue(“jdbc.properties”,“JAVABLOG_WRITE_URL”)); 
// writeProperties(“CONF / test.properties”,“dataSource.driver”,“测试”); 
readProperties(“CONF / test.properties”); 



上面的代码我也是学习大牛们的,也不是很难,很实用,希望对大家有帮助!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:抽象类和接口的总结Article suivant:Java可见性机制的原理