栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

自己写的简易版Java日志类分享

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自己写的简易版Java日志类分享


 
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
 

public class Logger {
  private static String logFilePath;
  private static boolean isInitialized = false;
  private static FileWriter logWriter = null;
  private static boolean printLogWhenLog = true;
 
  private static boolean InitLogger() {
    String logDirectoryPath = System.getProperty("user.dir")
 + java.io.File.separatorChar + "log";
 
    if (!new File(logDirectoryPath).exists()) {
      new File(logDirectoryPath).mkdir();
    }
    Date logfileDate = new Date();
    SimpleDateFormat dateFormat = new SimpleDateFormat(
 "yyyy-MM-dd-HH-mm-ss");
    logFilePath = logDirectoryPath + java.io.File.separatorChar
 + dateFormat.format(logfileDate) + ".log";
 
    try {
      logWriter = new FileWriter(logFilePath, true);
      isInitialized = true;
    } catch (IOException e) {
      // TODO Auto-generated catch block
      System.err.println("Unable to create log file.");
      System.err.println("Initilization fail.");
      e.printStackTrace();
      return false;
    }
    return true;
  }
 
  public static void Log(String message) {
    if (!isInitialized) {
      InitLogger();
    }
    Date logfileDate = new Date();
    SimpleDateFormat dateFormat = new SimpleDateFormat(
 "yyyy-MM-dd-HH-mm-ss");
    String callingClassName = new Exception().getStackTrace()[1]
 .getClassName();
    synchronized (logWriter) {
      String log = String.format("[%s] @ [%s]: %sn", callingClassName,
   dateFormat.format(logfileDate), message);
      if (printLogWhenLog) {
 System.out.printf("[log]:%s", log);
      }
      try {
 logWriter.write(log);
 logWriter.flush();
      } catch (IOException e) {
 // TODO Auto-generated catch block
 System.err.println("Write log to file %s error.");
 e.printStackTrace();
      }
    }
  }
 
  public static void Log(Exception exception) {
    if (!isInitialized) {
      InitLogger();
    }
    Date logfileDate = new Date();
    SimpleDateFormat dateFormat = new SimpleDateFormat(
 "yyyy-MM-dd-HH-mm-ss");
    String callingClassName = new Exception().getStackTrace()[1]
 .getClassName();
    synchronized (logWriter) {
      String log = String.format("[%s] @ [%s]: %sn", callingClassName,
   dateFormat.format(logfileDate), exception.toString());
      if (printLogWhenLog) {
 System.out.printf("[log]:%s", log);
      }
      try {
 logWriter.write(log);
 logWriter.flush();
      } catch (IOException e) {
 // TODO Auto-generated catch block
 System.err.println("Write log to file %s error.");
 e.printStackTrace();
      }
    }    
  }
 
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/151498.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号