log4j1.2.17使用
来源:互联网 发布:触摸屏软件制作 编辑:程序博客网 时间:2024/05/21 06:14
网上找了一些资料没看明白,还是找到了一本书,书里有这一章,一步步敲下来。明白了。
PART 1 WEB应用里使用log4j
一、log4j1.2.17下载地址点击打开链接
二、myeclipse中新建WEB项目log4jtest, 并修改web.xml为:
<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name></display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>log4j config file</servlet-name> <servlet-class>sse.log4j.Log4jInitServlet</servlet-class> <init-param> <param-name>configfile</param-name> <param-value>/WEB-INF/log4jconfig.properties</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet></web-app>
三、新建/WEB-INF/log4jconfig.properties为:
log4j.rootLogger = DEBUG,filelog4j.logger.log4jTestLogger=WARN,console,filelog4j.appender.console=org.apache.log4j.ConsoleAppenderlog4j.appender.console.layout=org.apache.log4j.PatternLayoutlog4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p]%m%nlog4j.appender.file=org.apache.log4j.RollingFileAppenderlog4j.appender.file.File=C:/Program Files/Apache Software Foundation/Tomcat 6.0/webapps/log4jtest/WEB-INF/log.htmllog4j.appender.file.MaxFileSize=500KBlog4j.appender.file.MaxBackupIndex=1log4j.appender.file.layout=org.apache.log4j.HTMLLayout
四、新建sse.log4j.Log4jInitServlet类为:
package sse.log4j;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import org.apache.log4j.PropertyConfigurator;public class Log4jInitServlet extends HttpServlet {@Overridepublic void init() throws ServletException {// TODO Auto-generated method stubsuper.init();String path = getServletContext().getRealPath("/");String configfile = path + getInitParameter("configfile");PropertyConfigurator.configure(configfile);}}五、新建空文件/WEB-INF/log.html
整个包结构图如下:
六、新建log4japp.jsp,内容如下:
<%@ page language="java" import="org.apache.log4j.Logger" pageEncoding="GB2312"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>log4j application</title> <meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--> </head> <body bgcolor="#FFFFFF"><%Logger rootlogger = Logger.getRootLogger();Logger log4jlogger = Logger.getLogger("log4jTestLogger");out.println("rootlogger's LEVEL is "+rootlogger.getLevel()+"<p>");out.println("log4jlogger's LEVEL is "+log4jlogger.getLevel()+"<p>");log4jlogger.debug("This is DEBUG info from "+log4jlogger.getName());log4jlogger.info("This is INFO info from "+log4jlogger.getName());log4jlogger.warn("This is WARN info from "+log4jlogger.getName());log4jlogger.error("This is ERROR info from "+log4jlogger.getName());log4jlogger.fatal("This is FATAL info from "+log4jlogger.getName());out.println("\nlog info has been printed!"); %> </body></html>七、启动tomcat,在浏览器中打入URL运行log4japp.jsp,可看到Console的部分输出(原因见参考资料)。
用浏览器打开log.html结果:
PART 2 普通java类里使用log4j
package Test;import org.apache.log4j.Logger;import org.apache.log4j.PropertyConfigurator;public class Test { /* * 步骤: * 一、下载log4j.jar包,并导入 * 二、配置log4j.properties文件 */ private Logger log = Logger.getLogger(Test.class); public Test() { //log4jconfig.properties文件和当前运行的class放在同一目录下 String connectdir=Test.class.getResource("log4jconfig.properties").getPath(); PropertyConfigurator.configure(connectdir); System.out.println(connectdir); } public void testprint() { log.debug("debug test"); log.info("info test"); log.warn("warn test"); log.error("error test"); } public static void main(String[] args) { Test test = new Test(); test.testprint(); }}
log4j参考资料:
参考一
参考二
参考三
- log4j1.2.17使用
- log4j1.x使用简介
- Log4j1.x和2.x使用详解总结
- Log4j2.x的使用(Log4j1.x升级到Log4j2.x)
- spring和log4j在web环境中的配置 spring3.2.5 log4j1.2.17
- Log4j1.2 --- 死锁
- logback与log4j1
- log4j1.2简介
- Log4j1升级Log4j2实战
- log4j1.x升级log4j2.x
- log4j1.2到2学习笔记
- log4j1 如何平滑升级到log4j2呢
- 笔记:struts 2.3.20 + log4j1.2.9 jar包
- slf4j、jcl、jul、log4j1、log4j2、logback大总结
- javaWeb 项目 之 log4j1 的配置 简单实例
- log4j1,commons-logging,jdk-logging快速切换slf4j工具
- slf4j、jcl、jul、log4j1、log4j2、logback大总结
- jdk-logging log4j1 log4j2 logback 日志框架介绍
- eclipse 下android的错误clipse Debug Certificate expired on....
- MCP2515调试笔记(一)
- uml行为图(活动图、状态图)
- open tag in new tab in vim
- wireshark启动显示The NPF driver isn't running
- log4j1.2.17使用
- hdu3364 Lanterns (高斯消元)
- 基于C语言的状态机实现技术
- 第十三周上机任务-项目2-二进制转换
- Sublime Text 2 入门及技巧
- 一些必不可少的Sublime Text 2插件
- 洗牌程序
- 弹出式菜单
- Heritrix3.0 CrawlJob控制台界面