Spring中配置Log4j

以前都是直接用log4j,重来没自已配置过,学习一下如何在spring环境中配置log4j。

第一步:添加log4j的相关包,这个步骤对于spring环境可以省了,应该已经有了。

第二步:在spring的环境中添加log4j的配置。

<context-param>  
            <param-name>webAppRootKey</param-name>  
            <param-value>应用名.root</param-value>  
        </context-param>  
      
        <context-param>  
            <param-name>log4jConfigLocation</param-name>  
            <param-value>WEB-INF/log4j.properties</param-value>  
        </context-param>  
          
        <context-param>  
            <param-name>log4jRefreshInterval</param-name>  
            <param-value>3000</param-value>  
        </context-param>  
      
    <listener>  
            <listener-class>  
                org.springframework.web.util.Log4jConfigListener  
            </listener-class>  
        </listener>
 

这相当于按spring的规范,将log4j进行初始化,无非是指定一下配置文件位置。

应用名.root 相当于添加一个系统变量,主要是为了指定应用的路径。

第三步:当于就是log4j本身的配置了。

log4j.rootCategory=INFO, stdout , R  
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
    log4j.appender.stdout.layout.ConversionPattern=%d-[HL] %p %t %c - %m%n  
      
    log4j.appender.R=org.apache.log4j.RollingFileAppender  
    log4j.appender.R.File=${应用名.root}/WEB-INF/logs/xx.log  
    log4j.appender.R.MaxFileSize=1024KB  
    log4j.appender.R.MaxBackupIndex=10  
    log4j.appender.R.layout=org.apache.log4j.PatternLayout  
    log4j.appender.R.layout.ConversionPattern=%d-[HL] %p %t %c - %m%n  
      
    log4j.logger.org.springframework=DEBUG  
    log4j.logger.org.hibernate=DEBUG  
    log4j.logger.org.hibernate.ps.PreparedStatementCache=WARN  
    log4j.logger.com.lagooo.as=DEBUG

 {应用名.root}指的是第二步配的变量,这里要注意一下,如果是在myeclipse的开发环境,这个路径是个临时目录,是在

metadata下面。\.metadata\.me_tcat\webapps\应用名

这个要注意,在正式运行时就会是你理解的目录了。

关于配置,最主要的几点是:

1:org.apache.log4j.RollingFileAppender 这是文件方式的输出,但可能是多个文件。

2:log4j.appender.R.MaxFileSize=1024KB  规定最大到1024K,就生成新文件。

      log4j.appender.R.MaxBackupIndex=10  最多生成10个,

      这种方式下,日志文件名会是:xx.log  xx.log.1  xx.log.2……

3:log4j.appender.R.layout.ConversionPattern 这是内容部分:就不再一一介绍了,可查log4j的帮助。

4:最后几行约定了相应代码包出错时的日志级别。

第四步:使用:

[java] view plaincopy
import org.apache.log4j.Logger;  
    private static Logger log = Logger.getLogger(SessionListener.class);  
      
    log.info("SessionListener contextInitialized!");

     引入logger,在类中生成静态实例,调用  info debug error……方法。

相关推荐