SLF4J1.7.2用户指南(中文版).doc
《SLF4J1.7.2用户指南(中文版).doc》由会员分享,可在线阅读,更多相关《SLF4J1.7.2用户指南(中文版).doc(7页珍藏版)》请在三一办公上搜索。
1、译自:http:/www.slf4j.org/manual.html翻译人:116982086SLF4J用户指南SLF4J全称为Simple Logging Facade for Java (简单日志门面),作为各种日志框架的简单门面或者抽象,包括 java.util.logging, log4j, logback. SLF4J允许用户在部署期间加入自己希望使用的日志系统。SLF4能够实现这些这些功能必须依赖于一个jar包,名为slf4j-api-1.7.2.jar. 如果在类加载路劲上没有找到任何绑定,则slf4j的默认实现为无操作。从 1.7.0 Logger接口提供了接受可变参数的打印方
2、法,替换以前的object参数。这个改变意味着SLF4J需要JDK需要1.5或以上的版本支持。java编译器内部会把可变参数部分转变为object数组.因此,Logger接口编译后的结果在1.7.0 和 1.6.0看来并没有什么区别。Hello World依照编程传统,这个例子展示了一个简单方式来使用SLF4J输出 Hello World. 首先获得一个名为 Hello World 的logger。这个logger接着打印日志消息Hello World。import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class Hel
3、loWorld public static void main(String args) Logger logger = LoggerFactory.getLogger(HelloWorld.class); logger.info(Hello World); 要运行这个例子,首先需要下载slf4j依赖包, 然后解压,将 slf4j-api-1.7.2.jar加入classpath中。编译运行这个例子会在控制显示下面信息:SLF4J: Failed to load class org.slf4j.impl.StaticLoggerBinder.SLF4J: Defaulting to no-op
4、eration (NOP) logger implementationSLF4J: See http:/www.slf4j.org/codes.html#StaticLoggerBinder for further Details.出现这个警告信息的原因是,在classpath中找不到任何slf4j的实现绑定。一旦将某个实现绑定加入classpath中,这个警告消息就不再出现。假设你将slf4j-simple-1.7.2.jar加入,此时你的classpath包含: slf4j-api-1.7.2.jar slf4j-simple-1.7.2.jar此时在编译运行HelloWorld将会在控制
5、台输出这样的结果:main INFO HelloWorld - Hello World典型的使用模式下面同样的代码展示了 SLF4J 的典型使用模式。注意第15行 -占位符 的使用。更多详细内容请查看FAQ中的问题 What is the fastest way of logging?1: import org.slf4j.Logger; 2: import org.slf4j.LoggerFactory; 3: 4: public class Wombat 5: 6: final Logger logger = LoggerFactory.getLogger(Wombat.class); 7
6、: Integer t; 8: Integer oldT; 9:10: public void setTemperature(Integer temperature) 11: 12: oldT = t; 13: t = temperature;14:15: logger.debug(Temperature set to . Old temperature was ., t, oldT);16:17: if(temperature.intValue() 50) 18: logger.info(Temperature has risen above 50 degrees.);19: 20: 21:
7、 在部署阶段绑定某个日志框架前面提到过,SLF4J 支持多种日志框架。SLF4J 发行包中自带几个用于“SLF4J绑定”的jar 文件, 每种绑定对应一种支持的日志框架。slf4j-log4j12-1.7.2.jar用于绑定 1.2版的log4j , 这是一个广泛使用的日志系统,当然你还要把log4j包加到classpath中slf4j-jdk14-1.7.2.jar用于绑定 java.util.logging, 作为JDK 1.4 的loggingslf4j-nop-1.7.2.jar用于绑定 NOP, 不做任何操作.slf4j-simple-1.7.2.jar用于绑定 simple 的实现
8、, 所有的打印会响应到 System.err. 只有INFO或者更高的级别会被打印. 这个绑定在小型应用中非常有用。slf4j-jcl-1.7.2.jar用于绑定 Jakarta Commons Logging. 这个绑定会使得SLF4J 的日志功能委托JCL来完成.还有除了SLF4J项目以外提供的绑定包,例如 logback 本身就实现了SLF4J。Logback的 ch.qos.logback.classic.Logger 类实直接实现了SLF4J 的 org.slf4j.Logger 接口。因此,结合logback使用 SLF4J 节省很多内存和计算的开销。要切换日志系统,只需在clas
9、spath上替换slf4j的绑定则可。例如,你要从java.util.logging切换到log4j,只需要把 slf4j-jdk14-1.7.2.jar 替换为 slf4j-log4j12-1.7.2.jarSLF4J不依赖于任何的特殊类加载器。实际上,每个SLF4J绑定都是在编译阶段使用且指定唯一一种日志框架。例如,slf4j-log4j12-1.7.2.jar绑定在编译阶段绑定使用log4j。在你的代码中,除了slf4j-api-1.7.2.jar意外,你只能在classpath中加入一种绑定。不要添加超过1个绑定。下面是这张图解释了总体的思路。(underlying表示直接实现SLF4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SLF4J1 7.2 用户指南 中文版
链接地址:https://www.31ppt.com/p-2388948.html