posts - 93,  comments - 2,  trackbacks - 0
    转自:http://musicbox95351.iteye.com/blog/868526
    比如项目为一个UserServlet,主要分三步
    1 日志输出文件log4j.xml的配置。 
    2 加载日志配置文件的servlet类。 
    3 web.xml配置

    第一步:
    
 1<?xml version="1.0" encoding="UTF-8" ?>
 2<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
 3<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
 4<appender name="infoChannel"
 5  class="org.apache.log4j.RollingFileAppender">
 6  <!-- 设置通道file和输出方式:org.apache.log4j.RollingFileAppender -->
 7  <param name="File" value="${catalina.home}/logs/tourist_guide_system_server.log" /><!-- 设置File参数:日志输出文件名 -->
 8  <param name="Append" value="true" /><!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->
 9  <param name="MaxBackupIndex" value="10" />
10  <param name="MaxFileSize" value="10KB"/>
11  <layout class="org.apache.log4j.PatternLayout">
12   <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n" /><!-- 设置输出文件项目和格式 -->
13  </layout>
14  <filter class="org.apache.log4j.varia.LevelRangeFilter">
15      <param name="LevelMin" value="INFO" /><!--设置将INFO级别的日志通过该通道输出-->
16      <param name="LevelMax" value="INFO" />
17  </filter>
18</appender>
19<appender name="debugChannel"
20  class="org.apache.log4j.RollingFileAppender">
21  <!-- 设置通道file和输出方式:org.apache.log4j.RollingFileAppender -->
22  <param name="File" value="${catalina.home}/logs/testdebug.log" /><!-- 设置File参数:日志输出文件名 -->
23  <param name="Append" value="true" /><!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->
24  <param name="MaxBackupIndex" value="10" />
25  <param name="MaxFileSize" value="10KB"/>
26  <layout class="org.apache.log4j.PatternLayout">
27   <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n" /><!-- 设置输出文件项目和格式 -->
28  </layout>
29  <filter class="org.apache.log4j.varia.LevelRangeFilter">
30      <param name="LevelMin" value="DEBUG" />
31      <param name="LevelMax" value="DEBUG" />
32  </filter>
33</appender>
34<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
35                <!-- 设置监视器输出方式 -->
36  <layout class="org.apache.log4j.PatternLayout">
37   <param name="ConversionPattern"
38    value="%-4r [%t] %-5p %c %x - %m%n" />
39  </layout>
40                <!--滤镜设置输出的级别-->
41  <filter class="org.apache.log4j.varia.LevelRangeFilter">
42   <param name="levelMin" value="info" />
43   <param name="levelMax" value="info" />
44   <param name="AcceptOnMatch" value="true" />
45  </filter>
46</appender>
47
48<root>
49  <!--设置输出的级别大于等于DEGUG priority value="DEBUG" / -->
50  <!--设置输出的级别-->
51  <priority value="INFO" />
52  <!-- 设置接收所有输出的通道 -->
53  <appender-ref ref="debugChannel" />
54  <appender-ref ref="infoChannel" /><!-- 与前面的通道id相对应 -->
55  <appender-ref ref="STDOUT" />
56</root>
57
58</log4j:configuration>

    第二步:

1
2import java.io.IOException;
3
4import javax.servlet.ServletException;
5import javax.servlet.http.HttpServlet;
6import javax.servlet.http.HttpServletRequest;
7import javax.servlet.http.HttpServletResponse;
8
9import org.apache.log4j.xml.DOMConfigurator;
10import org.slf4j.Logger;
11import org.slf4j.LoggerFactory;
12
13public class UserServlet extends HttpServlet {
14 private static final Logger log = LoggerFactory.getLogger(UserServlet.class);
15 public UserServlet(){}
16
17 public void init() throws ServletException {
18 log.info("Initializing, My MyActionServlet init this System's Const Variable");
19 String prefix = this.getServletConfig().getServletContext().getRealPath("/");//读取项目的路径
20 String file = this.getServletConfig().getInitParameter("log4j");//读取log4j相对路径
21 String filePath = prefix + file;
22 DOMConfigurator.configure(filePath);//加载.xml文件
23 log.info("Initializing, end My Init");
24 super.init();//此方法不能省,ActionServlet覆盖了的此方法中有很多重要操作
25 }

26}


    第三步:web.xml文件中增加servlet配置 
1<servlet>
2 <servlet-name>userServlet</servlet-name>
3 <servlet-class>com.richhouse.servlet.UserServlet</servlet-class>
4 <init-param>
5 <param-name>log4j</param-name>
6 <!-- 这里标出了位置 -->
7 <param-value>/WEB-INF/log4j.xml</param-value>
8 </init-param>
9 <load-on-startup>1</load-on-startup>
10 </servlet>
11 <servlet-mapping>
12 <servlet-name>userServlet</servlet-name>
13 <url-pattern>/userServlet</url-pattern>
14 </servlet-mapping>

posted on 2014-05-26 11:13 Terry Zou 阅读(1377) 评论(0)  编辑  收藏 所属分类: Tomcat+Eclipse

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


网站导航:
 
<2014年5月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

常用链接

留言簿(2)

随笔分类

随笔档案

文章分类

文章档案

相册

收藏夹

Java

搜索

  •  

最新随笔

最新评论

阅读排行榜

评论排行榜