在web project中使用log4j
下面我们以在tomcat中示范怎么配置和使用log4j
环境设置:用过tomcat的都知道,应该把log4j.jar文件拷贝到%TOMCAT_HOME%\common\lib中。
编辑servlet:
1
packagemy.scwcd;234importjavax.servlet.ServletException;5importjavax.servlet.http.HttpServlet;67importorg.apache.log4j.PropertyConfigurator;89
publicclassLog4jInitextendsHttpServlet{1011
publicLog4jInit(){12super();13 }1415
publicvoiddestroy(){16super.destroy();//Just puts "destroy" string in log17}1819
publicvoidinit()throwsServletException{20 String path=getServletContext().getRealPath("/");2122 String file=getInitParameter("log4j");23
if(file!=null){24 PropertyConfigurator.configure(path+file);25 }2627 }2829}3031
并在web.xml中加入如下配置:
1
2Log4jInit3my.scwcd.Log4jInit45log4j6WEB-INF\log4j.properties781910
注意上面中的"\"在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
下面写了两个测试的程序:
servlet Test.java中:
1
publicvoiddoGet(HttpServletRequest request, HttpServletResponse response)2
throwsServletException, IOException{34 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("
Success
");9 out.flush();10 out.close();11 }1213
JSP temp.jsp中:
1
response.setContentType("text/html");3 Logger logger=Logger.getLogger("temp.jsp");4 logger.info("Test use Logging for JSP");5 out.println("
Success
");6%>7
这样在%TOMCAT_HOME%\bin目录下会产生log4j.log的文件,这就是日志文件。