Servlet整合Log4j日志记录

Java本身也是有日志记录的API java.util.logging.Logger,我尝试过了,在自定义方面没有Log4j好用

Java原生的日志教程:http://lavasoft.blog.51cto.com/62575/184492/

关于log4j日志的配置文件中的参数介绍我就不详解了,直接递上其他博友的文章,我主要是介绍在Servlet中配置Log4j。因为大部分的文章讲的不是main方法中的demo,就是用Spring来启动Log4j的

Java项目如何记录日志:http://blog.csdn.net/goodleiwei/article/details/7059589


1.在java项目中新建一个Source Folder文件夹,并在其中新建一个log4j.properties文件

Servlet整合Log4j日志记录_第1张图片



2.修改log4j.properties文件,加入配置信息

log4j.rootLogger=DEBUG,M
log4j.appender.M=org.apache.log4j.DailyRollingFileAppender
log4j.appender.M.File=D:/log/WebTest.log
log4j.appender.M.ImmediateFlush=true
log4j.appender.M.Append=true
#log4j.appender.M.Threshold=DEBUG
log4j.appender.M.DatePattern='.'yyyy-MM-dd
log4j.appender.M.layout=org.apache.log4j.PatternLayout
log4j.appender.M.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} %p %m %l%n



3.配置log4j Servlet

package com.dunhanson.servlet;

import java.io.File;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.PropertyConfigurator;

@WebServlet(initParams={@WebInitParam(name="log4j", value="log4j.properties")})
public class Log4jServlet extends HttpServlet{
	private static final long serialVersionUID = 1L;

	@Override
	public void init(ServletConfig config) throws ServletException {
		String path = config.getServletContext().getRealPath("WEB-INF\\classes");
		path  = path + File.separator + config.getInitParameter("log4j");
		PropertyConfigurator.configure(path);
	}
	
	
}


你可能感兴趣的:(Java/Servlet)