简单日志类的实现,性能问题?
igyhi 2007-08-17 09:11:41 想写个日志工具,功能很简单,就是根据参数值Rank级别决定这个信息是否输出
应用:
public class A
{
//类中的其他代码...
//日志工具要调试输出
Log log=new Log();
log.outInfo("这里是输出的信息内容","Rank3");
}
public class Log
{
//允许显示的级别集合
private List l=null;
public Log()
{
//预定义3个级别
l=new ArrayList();
l.add("Rank1");
l.add("Rank2");
l.add("Rank3");
}
//显示信息函数
public void outInfo(String text,String type)
{
if(l.contains(type))System.out.println(text);
}
}
当使用的时候,我想用读文件内容来控制显示级别Rank,
一个文件logRank.txt
Rank="Rank1,Rank2,Rank3";
然后把文件属性读到List里
改造后的Log类
public class Log
{
//读文件内容
File f=new File("xxx");
//文件操作.....
//允许显示的级别集合
private List l=null;
public Log()
{
//预定义3个级别
l=new ArrayList();
//装入文件中的属性值
l.add(f1);
l.add(f2);
l.add(f3);
}
//显示信息函数
public void outInfo(String text,String type)
{
if(l.contains(type))System.out.println(text);
}
}
这样有个问题,就是每次new个Log对象都要读次文件.性能是不是不好.有没有什么更好的解决办法,读一次文件.
静态类可以解决上面的问题么?怎么写?
或者有没有更好的类似的实现方式