JAVA中利用LOG4J写日志

原创 2006年06月14日 20:39:00

JAVA利用LOG4J写日志

本人最近做的一个项目中遇到的写日志,就记录下来,还不完善,希望大家有好的意见.

接口定义
public interface Logger {

 /////////// 定数宣言 //////////
 /** ファイル定数 */
 public static final String LOG4JFILE = "log4j.properties";

 /** ログ用 */
 public static final String SYSTEMLOG = "Systemlog";

 // public void debug(String message) throws Exception;
 // 
 // public void info(String message) throws Exception;
 // 
 // public void warn(String message) throws Exception;
 // 
 // public void error(String errorCode,String message) throws Exception;

}

LOG4J的封装


package jp.co.**.**.com.frw.log;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;


public class LoggerAdapter implements jp.co.yachiyobank.inf.com.frw.log.Logger {

 ////////// クラス変数 //////////
 /** log4jのインスタンス */
 private static Logger log4j = null;

 /**
  * ログクラスの実例。<BR>
  *
  * @param なし
  * @return なし
  * @exception なし
  */
 public static void getInstance() {
  PropertyConfigurator.configure(LOG4JFILE);
  log4j = Logger.getLogger(SYSTEMLOG);
 }

 /**
  * debugログの編集、出力を行う。<BR>
  *
  * @param message 出力内容
  * @return なし
  * @exception なし
  */
 public static void debug(Object message) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.debug(message);
 }

 /**
  * debugログの編集、出力を行う。<BR>
  *
  * @param message 出力内容
  * @param throwable
  * @return なし
  * @exception なし
  */
 public static void debug(Object message, Throwable throwable) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.debug(message, throwable);
 }

 /**
  * infoログの編集、出力を行う。<BR>
  *
  * @param message 出力内容
  * @return なし
  * @exception なし
  */
 public static void info(Object message) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.info(message);

 }

 /**
  * infoログの編集、出力を行う。<BR>
  *
  * @param message 出力内容
  * @param throwable
  * @return なし
  * @exception なし
  */
 public static void info(Object message, Throwable throwable) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.info(message, throwable);

 }

 /**
  * warnログの編集、出力を行う。<BR>
  *
  * @param message  出力内容
  * @param throwable
  * @return なし
  * @exception なし
  */
 public static void warn(Object message, Throwable throwable) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.warn(message, throwable);

 }

 /**
  * warnログの編集、出力を行う。<BR>
  *
  * @param message  出力内容
  * @return なし
  * @exception なし
  */
 public static void warn(Object message) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.warn(message);

 }

 /**
  * errorログの編集、出力を行う。<BR>
  *
  * @param message 出力内容
  * @return なし
  * @exception なし
  */
 public static void error(Object message) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.error(message);

 }

 /**
  * errorログの編集、出力を行う。<BR>
  *
  * @param throwable
  * @param message 出力内容
  * @return なし
  * @exception なし
  */
 public static void error(Object message, Throwable throwable) {
  if (log4j == null) {
   getInstance();
  }
  // ログ出力
  log4j.error(message, throwable);

 }

}

LOG的格式编辑


package jp.co.**.**.com.frw.log;
/**
 * ログ出力処理クラス。<br>
 * <PRE>
 * (1)デバーグレベルログを出力。
 * (2)エラーレベルログを出力。
 * (3)インフォーレベルログを出力。
 * (4)Warnレベルログを出力。
 * </PRE>
 * <br>
 */
public final class LogUtils {
 
    ////////// 定数宣言 //////////
 /**
  * ログセファルディ
  */
 private final static String SEPARATOR = " ";
 
 /**
  * ログ内容を準備をします。<BR>
  * @param className クラス名
  * @param gyoumuName 業務名
  * @param message 出力内容
  * @param sql sql内容
  * @return logBuffer 準備をした内容
  */
 public static StringBuffer prepareLogMessage( Class className,String gyoumuName,
    String message,  String sql) {
  
  StringBuffer logBuffer = new StringBuffer();
  String name=null;
  
  if(className!=null){
      name=className.getName();
   logBuffer.append(name).append(SEPARATOR);
  }
  if(gyoumuName!=null){
  logBuffer.append(gyoumuName).append(SEPARATOR);
  }
  if (message != null) {
   logBuffer.append(message).append(SEPARATOR);
  }else {
   logBuffer.append(SEPARATOR);
  }
  
  if(sql!=null){
   logBuffer.append(sql).append(SEPARATOR);
  }else {
   logBuffer.append(SEPARATOR);
  }
        //結果が返します
  return logBuffer;
 }
 
 /**
  * 非SQL用 ログ内容を準備をします。<BR>
  * @param className クラス名
  * @param gyoumuName 業務名
  * @param message 出力内容
  * @return logBuffer 準備をした内容
  */
 public static StringBuffer setTextMessate(Class className,String gyoumuName, String message){
  String sql=null;
  StringBuffer logBuffer = prepareLogMessage(className,gyoumuName,message,sql);
  return logBuffer;
 }
 
 /**
  * SQL用 ログ内容を準備をします。<BR>
  * @param className クラス名
  * @param gyoumuName 業務名
  * @param message 出力内容
  * @param sql sql内容
  * @return logBuffer 準備をした内容
  */
 public static StringBuffer setTextMessate(Class className,String gyoumuName, String message,String sql){
  StringBuffer logBuffer = prepareLogMessage(className,gyoumuName,message,sql);
  return logBuffer;
 }
 
 /**
  * ログ内容を準備をします。<BR>
  *
  * @param message 出力内容
  * @return logBuffer 準備をした内容
  */
 public static StringBuffer setTextMessate(String message){
  Class className=null;
  String gyoumuName=null;
  String sql=null;
  StringBuffer logBuffer = prepareLogMessage(className,gyoumuName,message,sql);
  return logBuffer;
 }
 
 /**
  * ログ内容を準備をします。<BR>
  *
  * @param gyoumuName 業務名
  * @param message 出力内容
  * @return logBuffer 準備をした内容
  */
 public static StringBuffer setTextMessate(String gyoumuName,String message){
  Class className=null;
  String sql=null;
  StringBuffer logBuffer = prepareLogMessage(className,gyoumuName,message,sql);
  return logBuffer;
 }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

log4j包-java写日志

  • 2014-04-15 15:02
  • 383KB
  • 下载

java 使用log4j写日志文件

1.下载包,放在lib目录下 2.在CLASSPATH下建立log4j.properties,内容如下 log4j.rootLogger=info,ROLLING_FILE log4...

java日志操作之Log4j

  • 2012-02-20 13:43
  • 134KB
  • 下载

java日志--Log4j

Log4j =============================================================================================...

java日志记录log4j

  • 2016-02-22 11:01
  • 2.73MB
  • 下载

log4j ----java日志开发组件

  • 2011-07-25 17:47
  • 4.40MB
  • 下载

Java日志管理:Logger.getLogger()和LogFactory.getLog()的区别(详解Log4j)

第一、Logger.getLogger()和LogFactory.getLog()的区别     1.Logger.getLogger()是使用log4j的方式记录日志;     2.LogFac...

java开发日志文件log4j.jar

  • 2017-09-17 21:46
  • 349KB
  • 下载

在java中使用日志log4j

  • 2013-04-24 10:32
  • 383KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)