log4j的辅助代码,支持合并多个log4j配置文件。

1。当多人合作开发程序时,都使用了log4j,而且各自写了各自的log4j,properties配置文件 ,
在程序合并的时候,如果要合并配置文件的话,在后期开发维护又会产生一些不便。

//copyright © li zong bo

而log4j自身的配置信息,在读取新配置文件的时候,老配置文件的信息不会叠加。
因此自己写了个下面的方法。用来兼容老的配置信息的读取,也增强了配置文件的灵活性。
使用方法,只要配置文件名字满足log4j*.properties,再指定配置文件存放的文件夹就可以了。
/*
import org.apache.log4j.PropertyConfigurator;
PropertyConfigurator.configure(Properties properties);
使用这个方法来调用即可。

//copyright © li zongbo

*/
public static Properties loadproperties(String dir)
throws FileNotFoundException, IOException {
return loadproperties(dir, null);
}

//copyright © lizongbo

public static Properties loadproperties(String dir, String fileNamestartWith)
throws FileNotFoundException, IOException {
if (fileNamestartWith == null) {
fileNamestartWith = "log4j";
}

//copyright © li zongbo

Properties pro = new Properties();
File fdir = new File(dir);

//copyright © lizong bo

if (fdir.isFile()) {
if (fdir.getName().toLowerCase().endsWith(".properties")) {
pro.load(new FileInputStream(fdir));
}
} else {
File[] fspro = fdir.listFiles();

//copyright © lizongbo

for (int i = 0; i < fspro.length; i ) {
if (fspro[i].getName().startsWith(fileNamestartWith) &&
fspro[i].getName().toLowerCase().endsWith(".properties")) {
Properties temppro = new Properties();
temppro.load(new FileInputStream(fspro[i]));

//copyright © lizongbo

//copyright © lizongbo

for (Enumeration e = temppro.keys(); e.hasMoreElements();) { 特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系.
String key = (String) e.nextElement();
pro.setProperty(key, temppro.getProperty(key));
}
}
}
}

//copyright © lizongbo

//copyright © lizongbo

return pro;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值