004.SpringMVC 简单配置 Log4J

实际开发使用的日志框架很多,log4j可能有些过时了,这里需要简单的记录,方便偶的朋友和学生,做设计的时候能方便查看

1.在web.xml配置log4j.的监听器

      
        webAppRootKey  
        应用名.root  
      
  
      
        log4jConfigLocation  
        classpath:log4j.properties  
      
      
      
        log4jRefreshInterval
          
        6000  
      
  
      
          
            org.springframework.web.util.Log4jConfigListener  
          
    

    
    

这相当于按spring的规范,将log4j进行初始化,无非是指定一下配置文件位置。
应用名.root 相当于添加一个系统变量,主要是为了指定应用的路径。

补充说明:
说明: 在上文的配置里,在上文的配置里,Log4jConfigListener会去类路径下log4j.propeties 读取配置文件;开一条watchdog线程每60秒扫描一下配置文件的变化(这样在web服务启动后再去修改配置文件也不用重新启动web服务了);并把 web目录的路径压入一个叫webapp.root的系统变量(webapp.root将在log4j.properties文件中使用)。
然后,在log4j.properties 里就可以这样定义logfile位置
log4j.appender.logfile.File=${webapp.root}/WEB-INF/logs/myfuse.log
如果有多个web应用,怕webapp.root变量重复,可以在context-param里定义webAppRootKey。

2.log4j.properties文件

随便弄了一个 简单看一下而已

# debug%n  
  
#输出到文件  
log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender  
log4j.appender.LOGFILE.File=${应用名.root}/log/AllLog.log  
log4j.appender.LOGFILE.MaxFileSize=10000KB  
log4j.appender.LOGFILE.MaxBackupIndex=1000  
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout  
log4j.appender.LOGFILE.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n  
  
#mybatis显示SQL语句日志配置  
log4j.logger.com.ibatis=DEBUG  
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG  
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG  
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG  
log4j.logger.java.sql.Connection=DEBUG  
log4j.logger.java.sql.Statement=DEBUG  
log4j.logger.java.sql.PreparedStatement=DEBUG  

3.如何调用

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

你可能感兴趣的:(004.SpringMVC 简单配置 Log4J)