看了别人写了那么多的教程,自己也受益不少,现在也把自己学Log4J的体会写下来.

1.在WEB-INF\classes文件下放入一个java属性文件,名字为commons-logging.properties,这是一个通用日志文件的配置文件,当然你也可以用xml文件来弄.其内容如下:

#--------------------------------------------------------
#使用Log4J实现
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog

## 使用SimpleLog实现
#org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog

后面的值是你想要的实现日志接口的类.apache的commons-logging.jar本身带了两个实现,SimpleLog
是其中的一个,如果 你的要使用Log4J,还必须把Log4J大相关jar放到相应的lib下.


2.如果使用SimpleLog,那么在WEB-INF\classes下要有一个simplelog.properties文件,内容:
//---------------------------------------------
org.apache.commons.logging.simplelog.defaultlog = info

主要是定义SimpleLog日志输出级别.


3.使用Log4J进行日志输出不仅可以定义输出的级别,还可以定义输出的地方和输出的格式.而simplelog只有System.err.         Log4J主要是定义三个Logger,appender 和layout,appender 是输出的地方,layout就是布局,也就是输出的格式.
//-----------------------------------------------

## LOGGERS ##
#定义一个logger
log4j.rootLogger=INFO,console,file

## APPENDERS ##
#定义一个appender,后面的红色字体就是他的名字,可以任意定义.其值是相关的输出的类.可取值如
#ConsoleAppender
#RollingFileAppender
#DailyRollingFileAppender
..............................................

# log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=log.txt

#如果使用FileAppender那么后面还跟很有多属性如MaxFileSize,MaxBackupIndex等.

## LAYOUTS ##

# 定义格式
#格式主要有好几中常用的就是SimpleLayout,HTMLLayout,PatternLayout,使用PatternLayout时后面还要有一个定义格式的ConversionPattern.
log4j.appender.console.layout=org.apache.log4j.SimpleLayout

# PatternLayout
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%t %p - %m%n

#以下是使用的方法:
1.在action,servlet中

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

         Log log=LogFactory.getLog("helloapplog");
         log.trace("This is a trace message");
         log.debug("This is a debug message");
         log.info("This is an info message");
         log.warn("This is a warn message");
         log.error("This is an error message");
         log.fatal("This is a fatal message");

2.在jsp中.

 <%@ page import="org.apache.commons.logging.Log" %>
<%@ page import="org.apache.commons.logging.LogFactory" %>
<% Log logger = LogFactory.getLog( this.getClass(  ) ); %>
  <% logger.warn( "This is a warn message from a jsp" ); %>
  <% logger.error( "This is an error message from a jsp" ); %>

posted on 2006-04-22 09:38 jackstudio 阅读(804) 评论(0)  编辑  收藏 所属分类: java

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问