开源日志工具log4j
有时候我们需要这样的需求,即异常(错误)信息仅仅在控制台输出是不够的,希望在以文件的形式来记录,便于后期的查看与维护,这种情况该如何处理呢?
当然,我们可以自己写个工具类,该工具类就一个用途,即给文件中写入信息(记录错误),但是这样操作即劳命又伤财的,有没有一种简单的方法可以实现呢?既然都问出来了,那就是有!通过log4j就可以。
如何使用开源的日志记录工具log4j呢?很简单,只需要4步:
导入所需的jar文件
创建.properties文件
编写.properties文件,配置日志信息
在程序中使用log4j记录日志信息
接下来一步一步的看:
1.将log4j的jar文件导入到项目中:新建一个lib文件夹,将jar文件放入,右击->Build Path->Add to Build Path
2.创建log4j.properties文件
3.编写log4j.properties,以及配置信息。
### 设置Logger输出级别和输出目的地 ###
log4j.rootLogger=debug, stdout,logfile
### 把日志信息输出到控制台 ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.err
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
### 把日志信息输出到文件:jbit.log ###
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=jbit.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}
%l %F %p %m%n
4.现在就可以用了,代码如下:
public class Test {
private static Logger logger = Logger.getLogger(Test.class.getCanonicalName());
public static void main(String[] args) {
test();
}
public static void test(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入被除数:");
int num1 = sc.nextInt();
logger.debug("输入的被除数:"+num1);
System.out.println("请输入除数:");
int num2 = sc.nextInt();
logger.debug("输入的被除数:"+num2);
System.out.println(String.format("%d/%d=%d",num1,num2,num1/num2));
System.out.println("感谢使用本程序!");
}
}
运行结果:
最后打开jbit.log文件看看:
往期推荐
点分享
点点赞
点在看