⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jettylogger.java

📁 一个用于java web页面开发的开源包
💻 JAVA
字号:
/* * Copyright 2003 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.velocity.tools.test;import java.io.PrintWriter;import java.io.IOException;import org.mortbay.log.Logger;import org.mortbay.util.DateCache;/** Basic Jetty logger for our showcase webapp * *  @author <a href=mailto:cbrisson@apache.org>Claude Brisson</a> */public class JettyLogger implements Logger {    private boolean debug = false;    private String name = null;    private DateCache _dateCache=new DateCache("yyyy-MM-dd HH:mm:ss.SSS");    private static PrintWriter out = null;    static {        try {            String logfile = System.getProperty("jetty.log.file","/tmp/error.log");            out = new PrintWriter(logfile);        } catch(IOException ioe) {            System.out.println(ioe.getMessage());        }    }    public JettyLogger() {        this(null);    }    public JettyLogger(String name) {        this.name = name==null? "" : name;    }    /*     * org.mortbay.log.Logger interface     */    public boolean isDebugEnabled() {        return debug;    }    public void setDebugEnabled(boolean enabled) {        debug = enabled;    }    public void info(String msg,Object arg0, Object arg1)    {        if (out == null) return;        /* a bit of filtering in debug mode */        if (debug && (msg.startsWith("loaded class") || msg.startsWith("loaded interface"))) {            return;        }        logString(_dateCache.now() + " " + name + " " + format(msg,arg0,arg1));    }    public void debug(String msg,Throwable th)    {        if (debug)        {            if (out == null) return;            /* a bit of filtering in debug mode */            if (debug && (msg.startsWith("loaded class") || msg.startsWith("loaded interface"))) {                return;            }            logString(_dateCache.now()+" "+msg);            logStackTrace(th);        }    }    public void debug(String msg,Object arg0, Object arg1)    {        if (debug)        {            if (out == null) return;            /* a bit of filtering in debug mode */            if (debug && (msg.startsWith("loaded class") || msg.startsWith("loaded interface"))) {                return;            }            logString(_dateCache.now()+" "+format(msg,arg0,arg1));        }    }    public void warn(String msg,Object arg0, Object arg1)    {        if (out == null) return;        logString(_dateCache.now()+" "+format(msg,arg0,arg1));    }    public void warn(String msg, Throwable th)    {        if (out == null) return;        logString(_dateCache.now()+" "+msg);        logStackTrace(th);    }    public Logger getLogger(String name) {        if ((name==null && this.name==null) ||            (name!=null && name.equals(this.name)))            return this;        return new JettyLogger(name);    }    /*     * private helpers     */    private synchronized void logString(String msg) {        out.println(msg);        out.flush();    }    private synchronized void logStackTrace(Throwable th) {        th.printStackTrace(out);        out.flush();    }    private String format(String msg, Object arg0, Object arg1)    {        int i0=msg.indexOf("{}");        int i1=i0<0?-1:msg.indexOf("{}",i0+2);        if (arg1!=null && i1>=0)            msg=msg.substring(0,i1)+arg1+msg.substring(i1+2);        if (arg0!=null && i0>=0)            msg=msg.substring(0,i0)+arg0+msg.substring(i0+2);        return msg;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -