qiyadeng

          專注于Java示例及教程
          posts - 84, comments - 152, trackbacks - 0, articles - 34

          在web project中使用log4j

          Posted on 2005-09-23 14:16 qiyadeng 閱讀(985) 評(píng)論(0)  編輯  收藏 所屬分類: J2EE

          在web project中使用log4j

          下面我們以在tomcat中示范怎么配置和使用log4j

          環(huán)境設(shè)置:用過tomcat的都知道,應(yīng)該把log4j.jar文件拷貝到%TOMCAT_HOME%\common\lib中。
          編輯servlet:

           1package my.scwcd;
           2
           3
           4import javax.servlet.ServletException;
           5import javax.servlet.http.HttpServlet;
           6
           7import org.apache.log4j.PropertyConfigurator;
           8
           9public class Log4jInit extends HttpServlet {
          10
          11 public Log4jInit() {
          12  super();
          13 }

          14
          15 public void destroy() {
          16  super.destroy(); // Just puts "destroy" string in log
          17 }

          18
          19 public void init() throws ServletException {
          20  String path = getServletContext().getRealPath("/");
          21  
          22  String file = getInitParameter("log4j");
          23  if(file != null){
          24   PropertyConfigurator.configure(path+file);
          25  }

          26  
          27 }

          28
          29}

          30
          31


          并在web.xml中加入如下配置:

           1  <servlet>
           2    <servlet-name>Log4jInit</servlet-name>
           3    <servlet-class>my.scwcd.Log4jInit</servlet-class>
           4    <init-param>
           5     <param-name>log4j</param-name>
           6     <param-value>WEB-INF\log4j.properties</param-value>
           7    </init-param>
           8    <load-on-startup>1</load-on-startup>
           9  </servlet>
          10


          注意上面<param-value>中的"\"在linux要寫成"/"。
          還有加上log4j.properties文件在WEB-INF目錄下

          log4j.rootLogger=INFO, A1 , R
          log4j.appender.A1=org.apache.log4j.ConsoleAppender
          log4j.appender.A1.layout=org.apache.log4j.PatternLayout
          log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

          log4j.appender.R=org.apache.log4j.RollingFileAppender
          log4j.appender.R.File=log4j.log
          log4j.appender.R.MaxFileSize=100KB
          log4j.appender.R.MaxBackupIndex=1
          log4j.appender.R.layout=org.apache.log4j.PatternLayout
          log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

           

          下面寫了兩個(gè)測(cè)試的程序:
          servlet Test.java中:

           1 public void doGet(HttpServletRequest request, HttpServletResponse response)
           2   throws ServletException, IOException {
           3
           4  response.setContentType("text/html");
           5  PrintWriter out = response.getWriter();
           6  Logger logger = Logger.getLogger(Test.class);
           7  logger.info("Test use Logging for Servlet");
           8  out.println("<h1>Success<h1>");
           9  out.flush();
          10  out.close();
          11 }

          12
          13


          JSP temp.jsp中:

          1   <%
          2    response.setContentType("text/html");
          3  Logger logger = Logger.getLogger("temp.jsp");
          4  logger.info("Test use Logging for JSP");
          5  out.println("<h1>Success<h1>");
          6   %>
          7


          這樣在%TOMCAT_HOME%\bin目錄下會(huì)產(chǎn)生log4j.log的文件,這就是日志文件。

          主站蜘蛛池模板: 浠水县| 潞西市| 隆尧县| 漾濞| 讷河市| 巴塘县| 通道| 江达县| 罗甸县| 西贡区| 陇川县| 奉新县| 定陶县| 光泽县| 廊坊市| 贺州市| 耒阳市| 峨边| 从化市| 阜阳市| 大化| 莱西市| 旬阳县| 佛山市| 华亭县| 绥芬河市| 太保市| 深州市| 漳平市| 徐闻县| 班玛县| 台中市| 廊坊市| 平泉县| 张家口市| 航空| 若羌县| 四会市| 淮南市| 会昌县| 辽阳县|