您的位置:首页 >> 编程开发 >> Java >> Java基础 >> Java语言基础 >> 正文
RSS
 

org.apache.commons.logging介绍

http://www.rdxx.com 01年11月15日 11:06 互联网 我要投稿

关键词: Apache , ONS , COM

org.apache.commons.logging 介绍

 

    对多种日志APIs的简单封装包API

 

概述

    本包为服务器端程序的日志处理提供API以使用多种不同的日志系统。包括如下已经实现的:

    ·Log4J Apache Jakarta 项目。每个Log的实例都对应于一个Log4j Category类。

·JDK Logging API JDK1.4及后续版本中。每个Log的实例都是一个java.util.logging.Logger实例。

·LogKit Apache Jakarta 项目。每个Log的实例都对应于一个LogKit Logger类。

    ·NoOpLog 简单地接受将所有的Log实例的日志输出,。

    ·SimpleLog 将所有的Log实例的日志输出到 System.out中。

 

快速开始向导

 

别不耐烦,马上继续下去,下面的例子描述了对logger的典型声明和使用(用调用者的类名来命名):

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFacory;

public class Foo{

    Log log = LogFactory.getLog(this.calss);

    Public void Foo(){

       

        try{

            if(log.isDebugEnabled()){

                log.debug(“About to do something to object” + name);

            }

            name.bar();

        }catch(IllegalStateException e){

            log.error(“Something bad happened to “ + name,e);

        }

       

    }

}

 

除非你配置不同,否则所有的日志输出都将被抛弃。因此,你很想查看此页的剩余部分以理解怎样配置你的日志系统。

 

配置Commons Logging包

 

选择一个LogFactory实现

    从应用观点,首先需要的就是装载一个引用LogFactory实例的对象以便为这个应用创建一个Log实例。这通常通过调用静态的getFactory()方法完成。这个方法实现了如下的发现算法来选择LogFactory实现类的名字并在应用中使用它:

    ·检查org.apache.commons.logging.LogFactory的系统属性。

    ·使用JDK 1.3 JAR服务发现机制(参见

    http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html获得更多信息)来查找名为META-INF/services/org.apache.commons.logging.LogFactory的资源,其中第一行既包含了需要的类名。

  ·在应用程序的classpath中查找名为common-logging.properties的属性文件,其中的org.apache.commons.logging.LogFactory属性定义了期望的实现类的名字。

    ·回到到默认的实现中,这个接下来会介绍。

   

    如果找到commons-logging.properties文件,其中定义的所有属性将被用来配置LogFactory实例的属性。

 

    一旦选中一个实现类的类名,对应的类将从当前线程的类装载器(如果有)中被装载,或者从类装载器中装载LogFactory自己。这将允许在多个类装载器(如servlet容器)中共享一份commons-logging.jar的拷贝,但仍然允许每个web应用程序提供自己的LogFactory的实现,如果需要的话。该类的一个实例将被创建,并且

9 7 3 1 2 3 4 8 :

 
 
标签: Apache , ONS , COM 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站