jdk1.5日志和实例

这篇博客介绍了如何使用JDK1.5的日志API创建自定义的日志格式,包括HTMLFormatter和XMLFormatter。通过编写HTMLFormatter类实现日志信息以HTML表格的形式展示,而LoggingExample2类则展示了如何配置日志处理器,创建XML和HTML格式的日志文件。运行程序后,会输出一个包含严重级别的日志消息,并在当前目录生成两个日志文件:log_output.xml和log_output.html。
摘要由CSDN通过智能技术生成

java.util.logging.*  这下面全是关于日志的类(废话。。。。。。)类实在太多了,以下是是自己写的一个小例子(错,是偷袭的java高级编程上面的,哈哈.....脸红...................)甭管是抄了还是自己写的吧,,只要明白了就行了,

首先了写一个格式化输入类

HTMLFormatter.java

import java.util.logging.*;
public class HTMLFormatter extends Formatter{
    public String format(LogRecord record) {
         return "<tr><td>"+record.getMillis()+"</td><td>"+record.getMessage()+"</td></tr>/n";
    }
    public String getHead(Handler h)
   {
       return("<html>/n<body>/n<table border>/n"+"<tr><th>Time</th><th>Log Message</th></tr>/n");
   }
   public String getTail(Handler h)
   {
       return("</table>/n</body/n/n</html>");
   }

}

然后在写日志类

LoggingExample2.java

import java.util.logging.*;
import java.io.*;
public class LoggingExample2 {
    public static void main(String[] args) {
        LogManager lm=LogManager.getLogManager();
        Logger parentLogger,childLogger;
        try {
            FileHandler xml_handler = new FileHandler("log_output.xml");
            FileHandler html_handler = new FileHandler("log_output.html");
            parentLogger=Logger.getLogger("ParentLogger");

             //他们之间的父子关系用 . 表式
            childLogger=Logger.getLogger("ParentLogger.ChildLogger");
           
            lm.addLogger(parentLogger);
            lm.addLogger(childLogger);
           
            //日志的所有消息,警告以及更高的级别
            parentLogger.setLevel(Level.WARNING);
            //日志所有消息---最低的级别
            childLogger.setLevel(Level.ALL);
            xml_handler.setFormatter(new XMLFormatter());
            html_handler.setFormatter(new HTMLFormatter());
           
            parentLogger.addHandler(xml_handler);
            childLogger.addHandler(html_handler);
           
            childLogger.log(Level.FINE,"This is a fine log message");
            childLogger.log(Level.SEVERE,"This is a server log message");
            xml_handler.close();
            html_handler.close();
        } catch (SecurityException ex) {
            ex.printStackTrace();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
       
    }
}

运行出来的效果是:

1.在dos下输出以下内容:

2007-3-22 14:24:50 test.LoggingExample2 main
严重: This is a server log message
2.在工程目录下创建两个文件,这两个文件描述了这个日志的信息

log_output.xml:该文件是由父记录器创建的

log_output.html:此文件是由子记录器创建的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值