日期:2014-05-18  浏览次数:20595 次

log4j的使用问题
1、项目中有很多类,比如Action的、Service的、Dao的、工具类等等,究竟应该在哪些类里面使用log4j日志。

2、log.info() log.debug() log.error() 究竟在什么时候使用?具体到代码,还请达人给出代码说明一下使用场景。

3、是不是可以用SPRING的AOP把所有的log4j代码从项目中移出来,还是只能移出一部分??

谢谢!!!

------解决方案--------------------
1、看你需要咯,你觉得哪些需要打印日志就使用呗;
2、三个不同的等级,debug<info<error,调试的信息使用debug,一般的信息使用info,抛出异常啊、错误啊之类的使用error;
3、AOP不是万能的啦,它也不能切入到没被Spring接管的类里面,这些地方要是有Log也移不到AOP里
------解决方案--------------------
1、 一般在Action添加,servies dao 的异常向上抛出到action统一记录
2、log.info()  用于正常输出日志, log.debug()  顾名思义,调试的时候需要用,,而log.error() 则是发布项目之后使用,方便检查问题所在。 所以根据情况来调整。
3、不懂意思。
------解决方案--------------------
主要在action或servlet中使用吧,记录操作方便查错

log.info一般是正常状态下想知道程序的行为的状态, 会打印一条日志,

log.debug() 我们开发阶段,我们可以把日志界别定位DEBUG级,调试信息会输出在日志里便于调试和跟踪修改bug,当产品发布上线之后,就可以在log4j配置为info,log等,这时调试信息就不会输出在日志里,日志会只显示运行的相关信息。其实log.debug() 相当于我们在项目中 经常使用的System.out.println();

log.error() 是来记录错误日志的 , 方便以后维护


spring 利用spring的IOC机制,在不影响源码的基础上实现日志功能的切入。