完全可以分装一个类,而不必每个类要log,都得
定义private static Log testLogger = LogFactory.getLog(xxx.class);
最普通的实现:package moxtv.central.util;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
*
* @author weip
* @time 2006-4-30 16:38:27
*
*/
public class Logger {
/**
*
*/
private static Log sysLogger = LogFactory.getLog(Logger.class);
/**
*
* @author weip
* @time 2006-4-30 16:39:57
* @param obj
* Object
*/
public static void debug(Object obj) {
sysLogger.debug(obj);
}
/**
*
* @author weip
* @time 2006-4-30 16:41:39
* @param obj
* Object
*/
public static void info(Object obj) {
sysLogger.info(obj);
}
/**
*
* @author weip
* @time 2006-4-30 16:42:28
* @param obj
* Object
*/
public static void warn(Object obj) {
sysLogger.warn(obj);
}
/**
*
* @author weip
* @time 2006-4-30 16:42:50
* @param obj
* Object
*/
public static void error(Object obj) {
sysLogger.error(obj);
}
/**
*
* @author weip
* @time 2006-4-30 16:42:58
* @param obj
* Object
*/
public static void fatal(Object obj) {
sysLogger.fatal(obj);
}
}
另外一种重构后的实现,但似乎也没有带来更大的益处package moxtv.central.util;
import java.lang.reflect.Method;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* Logger的重构,也许不大合适
* @author weip
* @time 2006-4-30 17:24:49
*
*/
public class Logger2 {
/**
*
*/
private static Log sysLogger = LogFactory.getLog(Logger.class);
/**
*
*/
public static final String DEBUG = "debug";
/**
*
*/
public static final String INFO = "info";
/**
*
*/
public static final String WARN = "warn";
/**
*
*/
public static final String ERROR = "error";
/**
*
*/
public static final String FATAL = "fatal";
/**
* generic method instead of the five methods above
*
* @author weip
* @time 2006-4-30 16:51:31
* @param obj
* Object
* @param level
* String
*
*/
public static void log(Object obj, String level) {
Method method;
try {
method = sysLogger.getClass().getMethod(level,
new Class[] {Object.class });
method.invoke(sysLogger, new Object[] {obj });
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("It should be a unreachalbe point");
}
}
}
分享到:
相关推荐
在标题"org.apache.commons.httpclient相关资源包"中,我们可以看出这是关于使用Apache HttpClient进行HTTP通信的知识点。Apache HttpClient库是Apache软件基金会的一个项目,它提供了对HTTP协议的全面支持,包括GET...
`org.apache.commons.logging-sources-1.1.1.zip` 文件包含的是 Apache Commons Logging 1.1.1 版本的源代码,对于Java开发者来说,这是一个深入了解其内部工作原理和设计思路的重要资源。 `org` 目录是源代码的...
Commons Logging 是 Apache 组织提供的一款轻量级的日志记录工具库,它的主要目标是为 Java 开发者提供一个简单的接口来使用各种日志框架,如 Log4j、Java Util Logging(JUL)或者 Simple Logging Facade for Java...
org.apache.commons.logging.Log 接口中定义的方法,按严重性由高到低的顺序有: * log.fatal(Object message) * log.fatal(Object message, Throwable t) * log.error(Object message) * log.error(Object message...
在使用过程中,开发者只需在代码中导入`org.apache.log4j.Logger`,并创建一个logger实例,然后调用相应的日志方法(如`debug()`, `info()`, `warn()`等)进行日志记录。由于commons-logging的存在,你无需直接使用...
在某些情况下,可能需要通过系统属性(如 `-Dlogkit.logger.org.apache=org.apache.log4j.Logger`)或配置文件来指定特定的日志实现。此外,如果你的项目已经使用了其他日志框架,比如Log4j,那么Commons Logging会...
Apache Commons 是一个由 Apache...使用Apache Commons时,注意阅读官方文档,了解每个类和方法的功能,以确保正确和有效地利用这些工具。同时,遵循良好的编程实践,如适当的错误处理和资源管理,可以避免潜在的问题。
在Commons Logging中,主要的接口有`org.apache.commons.logging.Log`,它提供了各种级别的日志记录方法,如`trace()`, `debug()`, `info()`, `warn()`, `error()` 和 `fatal()`。这些方法对应不同严重程度的信息,...
在标题"commons-logging-1.2_commonslogging_"中提到的"commons-logging-1.2.jar"就是这个库的1.2版本,它是Spring框架中常用的一个依赖,用于处理日志记录。 Spring框架广泛使用Commons Logging作为其默认的日志...
1. **API JAR**:commons-logging-1.1.1.jar,这是Commons Logging的主API,提供了用于日志记录的基本类和接口,如`org.apache.commons.logging.Log`,`org.apache.commons.logging.LogFactory`等。 2. **源码**:...
该库的核心概念是`org.apache.commons.logging.Log`接口,它定义了日志的基本操作,如`debug()`, `info()`, `warn()`, `error()`和`fatal()`. 开发者在代码中使用这些方法来记录不同级别的信息。Apache Commons ...
3. `org.apache.commons.logging.impl.LogAdapter`:这是一个适配器接口,用于桥接不同日志系统的API,使得Commons Logging可以透明地使用它们。 4. 多种实现类,如`org.apache.commons.logging.impl.Log4JLogger`...
另一方面,"commons-logging-1.1.1.jar"是Apache Commons Logging项目的一部分,这是一个轻量级的日志框架。它的主要目的是提供一个抽象层,使得开发人员可以在不修改代码的情况下,选择和切换不同的日志实现(如log...
最后,`commons-logging.jar`是Apache Commons Logging库,它是一个轻量级的日志接口抽象层,允许开发者选择底层的日志实现,如Log4j、Java内置日志或者SLF4J等。通过使用Commons Logging,开发者可以轻松地更换日志...
然后,通过导入 `org.apache.commons.logging.Log` 和 `org.apache.commons.logging.LogFactory` 类,即可开始使用日志功能。例如: ```java import org.apache.commons.logging.Log; import org.apache.commons....
1. `org.apache.commons.logging.Log`:这是核心的日志接口,提供了如`debug()`, `info()`, `warn()`, `error()`, `fatal()`等方法,用于记录不同级别的日志信息。 2. `org.apache.commons.logging.LogFactory`:这...
1. `org.apache.commons.logging.Log`:这是最基本的日志接口,提供了各种日志级别,如`debug()`, `info()`, `warn()`, `error()`和`fatal()`等方法。 2. `org.apache.commons.logging.LogFactory`:它是工厂模式的...
它定义了一系列的日志接口,如`org.apache.commons.logging.Log`、`org.apache.commons.logging.LogFactory`等,这些接口为开发者提供了记录日志的方法,如`debug()`, `info()`, `warn()`, `error()` 和 `fatal()`。...
在本文中,我们将深入探讨Commons Logging的核心概念、主要功能和使用方法。 一、项目背景 在Java世界中,日志框架众多,不同的框架有着各自的优点和适用场景。然而,这给开发者带来了选择和集成的困扰。Commons ...
1. `org.apache.commons.logging.Log`:这是所有日志操作的基本接口,提供了如`debug()`, `info()`, `warn()`, `error()`和`fatal()`等方法,用于不同级别的日志记录。 2. `org.apache.commons.logging.LogFactory`...