JavaWeb项目中使用LOG4J


环境配置步骤:

1、下载log4j.jar

下载地址:https://logging.apache.org/log4j/

2、添加到BIN目录中

3、在src 目录下添加log4j.properties

log4j.rootLogger=info,console,file
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%-5p] %d %30c %m%n

log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern='-'yyyy-MM-dd
log4j.appender.file.File=
${log4jdir}/logs//log.log  //应用路径下/logs/生成日志
log4j.appender.file.Append=true
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%-5p] %d %30c %m%n
定义${log4jdir}路径占位符,servlet容器启动时动态设置。
或写入服务中生产目录的全路径,如:E:\SourceCode\YFOnlineServer\WebContent\logs

4、定义log4jlistener类实现ServletContextListener

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class log4jlistener implements ServletContextListener {
public static final String log4jdirkey = "log4jdir";
 public void contextDestroyed(ServletContextEvent servletcontextevent) {
  System.getProperties().remove(log4jdirkey);
 }
 public void contextInitialized(ServletContextEvent servletcontextevent) {
  String log4jdir = servletcontextevent.getServletContext().getRealPath("/");
  System.setProperty(log4jdirkey, log4jdir);
 }
}
  System.setProperty(log4jdirkey, log4jdir);设置3中的占位符

5、web.xml配置

  <listener>
  <listener-class>com.df.contextListener.log4jlistener</listener-class>
 </listener>

6、代码中使用

servlet中使用:
Logger logger=Logger.getLogger(log4jserlet.class.getName());
logger.info("HttpServlet");

普通类中使用:
static Logger logger = Logger.getLogger(loggingtest.class);
logger.info("class  aaa");






猜你喜欢

转载自blog.csdn.net/b850824/article/details/73920390