1、项目中有很多类,比如Action的、Service的、Dao的、工具类等等,究竟应该在哪些类里面使用log4j日志。2、log.info() log.debug() log.error() 究竟在什么时候使用?具体到代码,还请达人给出代码说明一下使用场景。3、是不是可以用SPRING的AOP把所有的log4j代码从项目中移出来,还是只能移出一部分??谢谢!!!

解决方案 »

  1.   

    1、看你需要咯,你觉得哪些需要打印日志就使用呗;
    2、三个不同的等级,debug<info<error,调试的信息使用debug,一般的信息使用info,抛出异常啊、错误啊之类的使用error;
    3、AOP不是万能的啦,它也不能切入到没被Spring接管的类里面,这些地方要是有Log也移不到AOP里
      

  2.   

    1、 一般在Action添加,servies dao 的异常向上抛出到action统一记录
    2、log.info()  用于正常输出日志, log.debug()  顾名思义,调试的时候需要用,,而log.error() 则是发布项目之后使用,方便检查问题所在。 所以根据情况来调整。
    3、不懂意思。
      

  3.   

    主要在action或servlet中使用吧,记录操作方便查错log.info一般是正常状态下想知道程序的行为的状态, 会打印一条日志,log.debug() 我们开发阶段,我们可以把日志界别定位DEBUG级,调试信息会输出在日志里便于调试和跟踪修改bug,当产品发布上线之后,就可以在log4j配置为info,log等,这时调试信息就不会输出在日志里,日志会只显示运行的相关信息。其实log.debug() 相当于我们在项目中 经常使用的System.out.println();log.error() 是来记录错误日志的 , 方便以后维护
    spring 利用spring的IOC机制,在不影响源码的基础上实现日志功能的切入。
      

  4.   

    又琢磨了一下,还是没有看懂。log.error()记录错误日志,那log.debug也可以记录错误日志啊。到底什么是错误日志??是异常的堆栈信息???还有log.warn()又区别在哪里??