LogUtils.java 4.19 KB
package cn.com.polysoft.utils;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.HashMap;
import java.util.Map;

public class LogUtils {
    /**
     * 错误输入日志
     */
    public static final Logger log = LoggerFactory.getLogger(LogUtils.class);

    /**
     * 获得模块方法中文
     * 新模块自己添加key value
     *
     * @param moduleName
     * @return
     */
    public static String getModuleName(String moduleName) {
        Map<String,String> map=new HashMap<>();
        map.put("user","用户模块");
        map.put("template","模板模块");
        map.put("uploadFile","文件上传模块");
        map.put("fileToImg","文件转图片");
        String newModuleName = map.get(moduleName);
        return newModuleName;
    }

    /**
     * 记录一直 info信息
     *
     * @param message
     */
    public static void logInfo(String message) {
        StringBuilder s = new StringBuilder();
        s.append((message));
        log.info(s.toString());
    }

    public static void logInfo(String message, Throwable e) {
        StringBuilder s = new StringBuilder();
        s.append(("exception : -->>"));
        s.append((message));
        log.info(s.toString(), e);
    }

    /**
     * 日志正常输出
     *
     * @param message     日志打印信息
     * @param moduleName  模块名
     * @param className   当前类
     * @param methodsName 方法名
     */
    public static void logInfo(String message, String moduleName,Class className,String methodsName) {

        String newModuleName = getModuleName(moduleName);
        StringBuilder s = new StringBuilder();
        //去除多余字符串
        s.append(("["+newModuleName+"]:"));
        //s.append(("当前类路径:-->>"));
        //去除多余字符串
        String substring = className.toString().substring(5);
        s.append(("[类路径:"+substring+"]"));
        //s.append("当前方法:-->>");
        s.append(("[方法名:"+methodsName+"]"));
        s.append("[打印信息:"+message+"]");
        //s.append(message);
        log.info(s.toString());
    }

    public static void logWarn(String message) {
        StringBuilder s = new StringBuilder();
        s.append((message));

        log.warn(s.toString());
    }

    public static void logWarn(String message, Throwable e) {
        StringBuilder s = new StringBuilder();
        s.append(("exception : -->>"));
        s.append((message));
        log.warn(s.toString(), e);
    }

    public static void logDebug(String message) {
        StringBuilder s = new StringBuilder();
        s.append((message));
        log.debug(s.toString());
    }

    public static void logDebug(String message, Throwable e) {
        StringBuilder s = new StringBuilder();
        s.append(("exception : -->>"));
        s.append((message));
        log.debug(s.toString(), e);
    }

    public static void logError(String message) {
        StringBuilder s = new StringBuilder();
        s.append(message);
        log.error(s.toString());
    }

    /**
     * 日志异常输出
     *
     * @param message     日志打印信息
     * @param e           异常信息
     * @param moduleName  模块名
     * @param methodsName 方法名
     */
    public static void logError(String message, Throwable e, String moduleName,Class className,String methodsName) {
        String newModuleName = getModuleName(moduleName);
        StringBuilder s = new StringBuilder();
        s.append(("["+newModuleName+"]:"));
        //s.append(("当前类路径:-->>"));
        //去除多余字符串
        String substring = className.toString().substring(5);
        s.append(("[类路径:"+substring+"]"));
        //s.append("当前方法:-->>");
        s.append(("[方法名:"+methodsName+"]"));
        s.append(("[错误信息:"+message+"]"));
        //s.append((message));
        log.error(s.toString(), e);
    }


    public static void main(String[] args) {
        try {
            Integer a=1;
            Integer b=0;
            Integer c=a/b;
            logInfo("成功执行","user",UploadFileUtils.class,"main");
        }catch (Exception e){
            logError(e.getMessage(),e,"user",LogUtils.class,"main");
        }

    }


}