slf4j-api-1.7.5日志打印实验
来源:互联网 发布:xampp的mysql启动不了 编辑:程序博客网 时间:2024/04/28 13:43
以下一段话来自:百度百科
如果你开发的是类库或者嵌入式组件,那么就应该考虑采用SLF4J,因为不可能影响最终用户选择哪种日志系统。在另一方面,如果是一个简单或者独立的应用,确定只有一种日志系统,那么就没有使用SLF4J的必要。假设你打算将你使用log4j的产品卖给要求使用JDK 1.4 Logging的用户时,面对成千上万的log4j调用的修改,相信这绝对不是一件轻松的事情。但是如果开始便使用SLF4J,那么这种转换将是非常轻松的事情。
今天来测试一下slf4j的使用和它的魅力。
一般现在java项目都是web项目,所以我们的试验项目就采用web项目测试。
1.新建web项目slf4jdemo
2.引用jar包
这里需要注意的就是slf4j对应的log4j的版本,的那个人你也可以选择其他的日志系统。
log4j-1.2.12.jar
servlet2.5-jsp2.1-api.jar
slf4j-api-1.7.5.jar
slf4j-log4j12-1.7.5.jar
3.添加Log4j的配置文件Log4j.properties
这里需要说明一下,Log4j本身的默认路径是/WEB-INF/classes/目录下的,所以千万别放错位置了。
#log4j logger FATAL=0 ERROR=3 WARN=4 INFO=6 DEBUG=7#log4j.rootLogger = DEBUG, a1log4j.rootLogger = OFF### direct log messages to stdout ###log4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target = System.outlog4j.appender.stdout.layout = org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{1}:%L - %m%nlog4j.logger.org =ERROR, a1log4j.logger.net = ERROR, a1log4j.logger.com.qisentech = DEBUG, a1log4j.appender.a1 = org.apache.log4j.RollingFileAppenderlog4j.appender.a1.File = ${rootPath}/webplus.loglog4j.appender.a1.MaxFileSize = 10000KBlog4j.appender.a1.MaxBackupIndex = 10log4j.appender.a1.layout = org.apache.log4j.PatternLayoutlog4j.appender.a1.layout.ConversionPattern = %d [%t](%F:%L)%c %-5p - %m%n#log4j.rootLogger=WARN, stdout#log4j.appender.stdout=org.apache.log4j.ConsoleAppender#log4j.appender.stdout.layout=org.apache.log4j.PatternLayout#log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n细心一点看配置信息,可以看到一个${rootPath},选择我们就要初始化这个变量。
4.新建初始化Servlet
/* * 文 件 名 : com.qisentech.slf4j.demo.WebplusContextStart.java * 创建日期 : 2013-8-23 11:20:48 * 创 建 者 : qsyang */package com.qisentech.slf4j.demo;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;/** * <p>Title: </p> * * <p>Description: </p> * * @author qsyang * @version 1.0 */public class WebplusContextStart extends HttpServlet { @Override public void init() throws ServletException { System.setProperty("log4j.configuration", "Log4j.properties"); String contextPath = this.getServletContext().getRealPath("/"); System.setProperty("rootPath", contextPath); }}我们设置了Log4j的默认参数log4j.configuration和我们配置文件变量rootPath。
5.在类中使用slf4j打印日志
引用方式:
Logger _log = LoggerFactory.getLogger(Slf4jTest.class);
注意,这里的对象引用是:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
再看下打印方式:
_log.debug(“调试日志:XXXXX”);
附上全部源码:
/* * 文 件 名 : com.qisentech.slf4j.demo.Slf4jTest.java * 创建日期 : 2013-8-23 11:02:20 * 创 建 者 : qsyang */package com.qisentech.slf4j.demo;import org.slf4j.Logger;import org.slf4j.LoggerFactory;/** * <p>Title: </p> * * <p>Description: </p> * * @author qsyang * @version 1.0 */public class Slf4jTest { private static Logger _log = LoggerFactory.getLogger(Slf4jTest.class); public static void testDebug(String info) { System.out.println("testDebug"); _log.debug(info); } public static void testInfo(String info) { System.out.println("testInfo"); _log.info(info); } public static void testWarn(String info) { System.out.println("testWarn"); _log.warn(info); } public static void testError(String info) { System.out.println("testError"); _log.error(info); }}5.不要忘了配置web.xml
<!-- Webplus 环境初始化(必须启动) --> <servlet> <servlet-name>WebplusContextStart</servlet-name> <servlet-class>com.qisentech.slf4j.demo.WebplusContextStart</servlet-class> <load-on-startup>1</load-on-startup> </servlet>这样整个就成功了。
下面将源码下载地址附上,有兴趣可以去下载。
http://download.csdn.net/detail/yakson/7586371
- slf4j-api-1.7.5日志打印实验
- 使用 slf4j.Logger 打印日志
- java使用slf4j 打印日志
- org.slf4j:slf4j-api:添加日志管理
- 使用SLF4J打印日志---打印异常日志注意点
- 加入slf4j后mybatis无法打印日志
- 日志系统jar包:slf4j-api, slf4j-log4j12以及log4j
- 日志系统jar包:slf4j-api, slf4j-log4j12以及log4j
- slf4j和log4j结合打印参数化日志
- 如何启用设置org.slf4j.Logger打印并输出日志
- jFinal 使用slf4j打印sql及其它相关日志
- slf4j 日志
- slf4j -API
- 为什么slf4j+log4j能打印日志到控制台,但是不能打印到指定文件
- 【Slf4j分析】slf4j-api和slf4j-simple
- 打印系统日志(使用API)
- Mybatis与SLF4J、Apache Commons Logging、Apache Log4J、JDK Logging等日志打印配置
- 在Java项目中如何使用log4j和slf4j实现日志打印
- 链表问题
- http-关于application/x-www-form-urlencoded等字符编码的解释说明
- 函数指针使用示例(参考Linux-内核代码)
- Git常用命令解说
- ColoJourney - Colorful Journey
- slf4j-api-1.7.5日志打印实验
- Mac下安装FireFly
- 谷歌区S档翻译活暗揖
- oracle 基础
- 怎么能北航引向右两年脑
- 让自己理员引与弹号给们
- sql 百万级数据库优化方案
- unix环境高级编程(第2版)——使用自定义头文件apue.h
- 【IP\Bash\环境变量\mount挂载\TFTP和NFS】各种设置