欢迎来到天天文库
浏览记录
ID:34721648
大小:84.68 KB
页数:5页
时间:2019-03-10
《apachecommons-logging使用实例》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、ApacheCommons-logging使用实例本文将介绍如何在程序中使用ApacheCommons-loggingauthor:ZJ 07-3-17Blog: [url]http://zhangjunhd.blog.51cto.com/[/url]1.Commons-Loggin简介JakartaCommonsLogging(JCL)提供的是一个日志(Log)接口(interface),同时兼顾轻量级和不依赖于具体的日志实现工具。它提供给中间件/日志工具开发者一个简单的日志操作抽象,允许程序开发人员使用不同的具体日志实现工具。用户被假定已熟悉某种日志实现工具的更高级别的细节。J
2、CL提供的接口,对其它一些日志工具,包括Log4J,AvalonLogKit,andJDK1.4等,进行了简单的包装,此接口更接近于Log4J和LogKit的实现。2.快速入门JCL有两个基本的抽象类:Log(基本记录器)和LogFactory(负责创建Log实例)。当commons-logging.jar被加入到CLASSPATH之后,它会合理地猜测你想用的日志工具,然后进行自我设置,用户根本不需要做任何设置。默认的LogFactory是按照下列的步骤去发现并决定那个日志工具将被使用的(按照顺序,寻找过程会在找到第一个工具时中止): 1. 寻找当前factory中名叫org.
3、apache.commons.logging.Log配置属性的值 2. 寻找系统中属性中名叫org.apache.commons.logging.Log的值 3. 如果应用程序的classpath中有log4j,则使用相关的包装(wrapper)类(Log4JLogger) 4. 如果应用程序运行在jdk1.4的系统中,使用相关的包装类(Jdk14Logger) 5. 使用简易日志包装类(SimpleLog)org.apache.commons.logging.Log的具体实现有如下:-org.apache.commons.logging.impl.Jdk14Log
4、ger 使用JDK1.4。-org.apache.commons.logging.impl.Log4JLogger 使用Log4J。-org.apache.commons.logging.impl.LogKitLogger 使用 avalon-Logkit。-org.apache.commons.logging.impl.SimpleLog common-logging自带日志实现类。它实现了Log接口,把日志消息都输出到系统错误流System.err 中。 -org.apache.commons.logging.impl.NoOpLog common-logging自带日志实现类
5、。它实现了Log接口。 其输出日志的方法中不进行任何操作。3.使用JCL开发因为Log4j的强大,同时开发者又不希望对Log4j的依赖性太强。所以目前比较流行的是Commons-logging和Log4j结合使用。 1. 部署日志器 下载commons-logging.jar和log4j.jar包,能后把它们放到工程的lib目录下,引入工程中。2. 指定日志器 在属性文件common-logging.properties中设置实现接口的类。如下(这里设置Log4j为所使用的日志包):#commons-logging.properties文件配置信息 #org.apache.
6、commons.logging.Log=org.apache.commons.logging.impl.SimpleLog#Mustbeoneof("trace","debug","info","warn","error",or"fatal"). #利用log4j为输出介质org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog #JDK5Logger#org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jd
7、k14Logger 3.org.apache.commons.logging.Log接口中定义的方法,按严重性由高到低的顺序有:log.fatal(Objectmessage);log.fatal(Objectmessage,Throwablet);log.error(Objectmessage);log.error(Objectmessage,Throwablet);log.warn(Objectmessage);log.warn(Objectmessage,Thr
此文档下载收益归作者所有