📄 logwriter.java
字号:
package com.trulytech.mantis.system;import java.io.PrintWriter;import java.io.BufferedWriter;import java.io.FileWriter;import java.text.SimpleDateFormat;import java.util.Hashtable;/** * <p>Title: logWriter</p> * <p>Description: 日志处理</p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: trulytech</p> * @author WangXian * @version 1.2 */public class logWriter {//是否初始化 public static boolean isInited = false;//日志 public static PrintWriter LogWriter = null;//日期格式 private static SimpleDateFormat Formatter = null;//日期格式 private static SimpleDateFormat DateFormatter = null;//日志记录时间 private static String LogDate = null; /** * 日志初始化 * @throws Exception */ protected static void init() throws Exception { if (isInited) return; try { Formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); DateFormatter = new SimpleDateFormat("yyyyMMdd"); if (Properties.logFileType.equalsIgnoreCase("multi")) { LogDate = DateFormatter.format(new java.sql.Timestamp(System. currentTimeMillis())); if (Properties.logType.equalsIgnoreCase("Append")) LogWriter = new PrintWriter(new BufferedWriter(new FileWriter( Properties.logFilePrefix + LogDate + ".log", true)), true); else LogWriter = new PrintWriter(new BufferedWriter(new FileWriter( Properties.logFilePrefix + LogDate + ".log", false)), true); } else { if (Properties.logType.equalsIgnoreCase("Append")) LogWriter = new PrintWriter(new BufferedWriter(new FileWriter( Properties.logFilePrefix + ".log", true)), true); else LogWriter = new PrintWriter(new BufferedWriter(new FileWriter( Properties.logFilePrefix + ".log", false)), true); } isInited = true; } catch (Exception e) { System.out.println("LogWriter initlizes failure!"); throw e; } } /** *写日志 *@param Level 等级 *@param logInfo log信息 */ private static void log(int Level, String logInfo) { if (!isInited) return; try { //是否产生多个文件 if (Properties.logFileType.equalsIgnoreCase("multi")) { //产生多个日志文件 if (!LogDate.equalsIgnoreCase(DateFormatter.format(new java.sql. Timestamp(System. currentTimeMillis())))) { ChangeLogFile(); } } if (Level <= Properties.logLevel) { java.sql.Timestamp time = new java.sql.Timestamp(System. currentTimeMillis()); if (Level == 1) { LogWriter.println("[错误信息 " + Formatter.format(time) + "] " + logInfo); if (Properties.ScreenLog) System.out.println("[错误信息 " + Formatter.format(time) + "] " + logInfo); } else if (Level == 2) { LogWriter.println("[一般信息 " + Formatter.format(time) + "] " + logInfo); if (Properties.ScreenLog) System.out.println("[一般信息 " + Formatter.format(time) + "] " + logInfo); } else { LogWriter.println("[详细信息 " + Formatter.format(time) + "] " + logInfo); if (Properties.ScreenLog) System.out.println("[详细信息 " + Formatter.format(time) + "] " + logInfo); } time = null; } LogWriter.flush(); } catch (Exception e) { System.out.println("Write LogFile Failure [" + e.toString() + "]"); } } /** * 写一般信息 * @param logInfo String */ public static void Info(String logInfo) { log(2, logInfo); } /** * 写调试信息 * @param logInfo String */ public static void Debug(String logInfo) { log(3, logInfo); } /** * 写错误信息 * @param logInfo String */ public static void Error(String logInfo) { log(1, logInfo); } /** * 更换日志文件 * @throws Exception */ public synchronized static void ChangeLogFile() throws Exception { LogDate = DateFormatter.format(new java.sql.Timestamp(System. currentTimeMillis())); LogWriter.flush(); LogWriter.close(); if (Properties.logType.equalsIgnoreCase("Append")) LogWriter = new PrintWriter(new BufferedWriter(new FileWriter( Properties.logFilePrefix + LogDate + ".log", true)), true); else LogWriter = new PrintWriter(new BufferedWriter(new FileWriter( Properties.logFilePrefix + LogDate + ".log", false)), true); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -