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

📄 generallogger.java.svn-base

📁 日志组件,添加到应用中,可在数据库中查询日志
💻 SVN-BASE
字号:
package com.gisinfo.common.log.general;

import com.gisinfo.common.log.Logger;
import com.gisinfo.common.log.simple.SimpleLogger;
import com.gisinfo.common.log.simple.SimpleLogEvent;
import com.gisinfo.common.util.IDCreator;

/**
 * User: Ken
 * Date: 2008-5-22
 * Time: 11:42:03
 */
public class GeneralLogger {
    private Logger log = null;

    private GeneralLogger(String sign) {
        log = Logger.getLogger(sign);
    }

    private GeneralLogger(Class aClass) {
        log = Logger.getLogger(aClass);
    }

    private GeneralLogger(Logger logger) {
        log = logger;
    }

    private GeneralLogger(String sign, boolean isCustomLogger) {
        log = isCustomLogger ? Logger.getCustomLogger(sign) : Logger.getLogger(sign);
    }

    /**
     * 根据Class获取系统类型 GeneralLogger
     *
     * @param aClass
     * @return
     */
    public static GeneralLogger getLogger(Class aClass) {
        return new GeneralLogger(aClass);
    }

    /**
     * 根据字符串标识获取系统类型 GeneralLogger
     *
     * @param sign
     * @return
     */
    public static GeneralLogger getLogger(String sign) {
        return new GeneralLogger(sign);
    }

    /*public static GeneralLogger getLogger(Logger logger) {
        return new GeneralLogger(logger);
    }*/

    /**
     * 根据标识获取自定义类型 GeneralLogger
     *
     * @param sign 该标志在gisLog.properties中定义,如果该标志未定义,将自动转换为系统类型日志
     * @return
     */
    public static GeneralLogger getCustomLogger(String sign) {
        return new GeneralLogger(sign, true);
    }

    /*
   // id  ip  who  where  when  action  lvl systemName  what  description
    */
    /**
     * 以以下日志为例:
     * 来自BS系统(IP:192.168.0.0.1)的 用户Admin 在本系统模块A处 修改了图层A
     * 本方法的级别为trace,时间为系统记录时的系统时间
     *
     * @param who         用户Admin
     * @param action      修改
     * @param what        图层A
     * @param description 用户A修改了图层A
     * @param where       系统模块A
     * @param ip          192.168.0.0.1
     * @param systemName  BS系统
     */
    public void trace(String who, String action, String what, String description, String where, String ip, String systemName) {
        log.trace(new GeneralLogEvent(getId(), who, null, where, action, what, description, ip, systemName));
    }

    /**
     * 以以下日志为例:
     * 用户Admin 在本系统模块A处 修改了图层A
     * 本方法的级别为trace,时间为系统记录时的系统时间
     *
     * @param who         用户Admin
     * @param action      修改
     * @param what        图层A
     * @param description 用户A修改了图层A
     */
    public void trace(String who, String action, String what, String description) {
        trace(who, action, what, description, null, null, null);
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     * @param where
     * @param ip
     * @param systemName
     */
    public void debug(String who, String action, String what, String description, String where, String ip, String systemName) {
        log.debug(new GeneralLogEvent(getId(), who, null, where, action, what, description, ip, systemName));
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     */
    public void debug(String who, String action, String what, String description) {
        debug(who, action, what, description, null, null, null);
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     * @param where
     * @param ip
     * @param systemName
     */
    public void info(String who, String action, String what, String description, String where, String ip, String systemName) {
        log.info(new GeneralLogEvent(getId(), who, null, where, action, what, description, ip, systemName));
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     */
    public void info(String who, String action, String what, String description) {
        info(who, action, what, description, null, null, null);
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     * @param where
     * @param ip
     * @param systemName
     */
    public void warn(String who, String action, String what, String description, String where, String ip, String systemName) {
        log.warn(new GeneralLogEvent(getId(), who, null, where, action, what, description, ip, systemName));
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     */
    public void warn(String who, String action, String what, String description) {
        warn(who, action, what, description, null, null, null);
    }


    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     * @param where
     * @param ip
     * @param systemName
     */
    public void exception(String who, String action, String what, String description, String where, String ip, String systemName) {
        log.exception(new GeneralLogEvent(getId(), who, null, where, action, what, description, ip, systemName));
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     */
    public void exception(String who, String action, String what, String description) {
        exception(who, action, what, description, null, null, null);
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     * @param where
     * @param ip
     * @param systemName
     */
    public void error(String who, String action, String what, String description, String where, String ip, String systemName) {
        log.error(new GeneralLogEvent(getId(), who, null, where, action, what, description, ip, systemName));
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @param who
     * @param action
     * @param what
     * @param description
     */
    public void error(String who, String action, String what, String description) {
        error(who, action, what, description, null, null, null);
    }

    /**
     * 参数含义请参考 trace 方法
     *
     * @return
     */
    private static String getId() {
        return IDCreator.getUUID();
    }


}

⌨️ 快捷键说明

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