[Java学习] 之Log4j学习

1.首先:下载log4j 

2.在WEB-INF中建立log4j.properties

   并可参考这段代码

 1 log4j.rootLogger=DEBUG,A1,A2,A3,A4
 2 
 3 ###  system.out  ###
 4 log4j.appender.A2 =org.apache.log4j.ConsoleAppender
 5 log4j.appender.A2.Threshold=DEBUG
 6 log4j.appender.A2.Target=System.out
 7 ###log4j.appender.A2.encoding=UTF-8
 8 log4j.appender.A2.layout=org.apache.log4j.PatternLayout
 9 log4j.appender.A2.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n
10 
11 ### file debug ###
12 log4j.appender.A1 = org.apache.log4j.DailyRollingFileAppender
13 log4j.appender.A1.File = ../logs/run/DServerDebug.log
14 log4j.appender.A1.DatePattern='.'yyyy-MM-dd
15 ###log4j.appender.A1.MaxFileSize=100MB
16 log4j.appender.A1.encoding=UTF-8
17 log4j.appender.A1.Append = true
18 log4j.appender.A1.Threshold = DEBUG
19 log4j.appender.A1.layout = org.apache.log4j.PatternLayout
20 log4j.appender.A1.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n
21  
22 ### file INFO ###
23 log4j.appender.A3 = org.apache.log4j.DailyRollingFileAppender
24 log4j.appender.A3.File = ../logs/run/DServerINFO.log
25 log4j.appender.A3.DatePattern='.'yyyy-MM-dd
26 ###log4j.appender.A3.MaxFileSize=10MB
27 log4j.appender.A3.encoding=UTF-8
28 log4j.appender.A3.Append = true
29 log4j.appender.A3.Threshold = INFO
30 log4j.appender.A3.layout = org.apache.log4j.PatternLayout
31 log4j.appender.A3.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n
32 
33  
34 ### file ERROR ###
35 log4j.appender.A4 = org.apache.log4j.DailyRollingFileAppender
36 log4j.appender.A4.File = ../logs/run/DServerERROR.log
37 log4j.appender.A4.DatePattern='.'yyyy-MM-dd
38 ###log4j.appender.A4.MaxFileSize=100MB
39 log4j.appender.A4.encoding=UTF-8
40 log4j.appender.A4.Append = true
41 log4j.appender.A4.Threshold = ERROR
42 log4j.appender.A4.layout = org.apache.log4j.PatternLayout
43 log4j.appender.A4.layout.ConversionPattern=[%x] [%-d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n

可根据不同的项目 修改不同的参数就可以了。 具体参数的作用可参考此文章:http://blog.sina.com.cn/s/blog_7096a4800100pa5c.html

3.在这里 由于我用的是Servlet 所以在 Web.xml中加入了 Servlet的配置

 1 <!-- 开始 Log4j Servlet配置 -->  
 2     <servlet>  
 3         <servlet-name>log4j-init</servlet-name>  
 4         <servlet-class>application.Log4jInit</servlet-class><!--log4j初始化servlet类的包路径-->  
 5         <init-param>  
 6         <param-name>log4j</param-name>  
 7         <param-value>WEB-INF/log4j.properties</param-value><!--log4j配置文件路径-->
 8       <!--log4j配置文件路径或者写成绝对路径,比如:C:\Program Files\apache-tomcat-6.0.35\word\log4j.properties-->
 9         </init-param>  
10         <load-on-startup>1</load-on-startup>  
11     </servlet>  
12 <!--结束 Log4j Servlet配置-->

 4.编写初始化类:log4jInit

 1 package application;
 2  
 3 import javax.servlet.http.HttpServlet;
 4 import org.apache.log4j.PropertyConfigurator;
 5  
 6 /*
 7  *  初始化Log4J
 8  * 
 9  */
10  
11 public class Log4jInit extends HttpServlet {
12     public void init(ServletConfig config) throws ServletException()
13     {
14         String prefix = config.getServletContext().getRealPath("/");
15         String file = config.getInitParameter("log4j");    
16         System.out.println("日志的配置文件路径为:"+prefix+file);
17         if(file != null)
18         {
19             PropertyConfigurator.configure(prefix+file);  //载入配置文件
20             System.out.println("日志的配置文件读取成功");
21              
22         }
23     }
24 }

 

到这里准备工作就结束了 可以使用log4j来进行日志的记录了。

5.使用 

   在要用的地方

1 static Logger logger = Logger.getLogger(当前类.class);
2 logger.debug(content); 

 

  

posted @ 2013-11-16 20:57  黑夜骑士17  阅读(226)  评论(0编辑  收藏  举报