Chinaunix首页 | 论坛 | 博客
  • 博客访问: 98894
  • 博文数量: 26
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 280
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-14 13:33
文章分类

全部博文(26)

文章存档

2008年(8)

2007年(18)

我的朋友

分类: Java

2007-04-28 16:30:32

三、配置文件

         J2SDK1.4Java Logging框架的配置文件(Windows)

%J2SDK1.4_HOME%/jre/lib/logging.properties

     从配置文件可以看到:

(一) 自定义日志配置文件:

java -Djava.util.logging.config.file=myfile

(二) 全局Handler默认为java.util.logging.ConsoleHandler

handlers= java.util.logging.ConsoleHandler

所以我们的任何日志记录动作都会在控制台进行显示。

(三) 缺省的消息记录级别为:INFO

.level= INFO 

在缺省情况下我们在控制台看不见低于INFO级别的日志消息。

(四) 缺省的Handler消息格式为java.util.logging.SimpleFormatter

 

四、日志框架在程序测试中的应用

         Logger类提供了两个的方法:Logger.entering() ogger.exiting() 。这对我们调试自己的方法调用提供了便利的方式。

     例子:

     记录方法调用的输入参数和输出参数 方法myMethod将一个int 追加在一个对象之后。

运行该程序应将logging.properties

java.util.logging.ConsoleHandler.level = INFO

改为:

java.util.logging.ConsoleHandler.level = ALL

 

import java.util.logging.*;

public class MyClass {

public String myMethod(int p1, Object p2) {

             Logger logger = Logger.getLogger("com.mycompany.MyClass");

        if (logger.isLoggable(Level.FINER)) {

            logger.entering(this.getClass().getName(), "myMethod",

                                new Object[]{new Integer(p1), p2});

        }

        String tmp = p2.toString() + p1;

 

        if (logger.isLoggable(Level.FINER)) {

            logger.exiting(this.getClass().getName(), "myMethod", tmp);

        }

        return tmp;

    }

        

    public static void main(String args[]) {

        MyClass mc = new MyClass();

            String rslt = mc.myMethod(123,"Hello");

        

    }

}

 

后记

         J2SDK1.4引入的日志记录框架为构建简易的日志记录系统提供了便利的解决方案。虽然还有期它的一些专用日志包如Log4j,但从简单的打印输出到严密的、可扩展的日志记录框架,J2SDK1.4的日志系统已经足以满足一般的系统开发的要求。

阅读(1530) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~