?? logmanager.java
字號:
/*****************************************************************************
* (C) Copyright 2004 。
* 保留對所有使用、復制、修改和發(fā)布整個軟件和相關文檔的權利。
* 本計算機程序受著作權法和國際公約的保護,未經授權擅自復制或
* 傳播本程序的全部或部分,可能受到嚴厲的民事和刑事制裁,并
* 在法律允許的范圍內受到最大可能的起訴。
*/
/*****************************************************************************
* @作者:Golden Peng
* @版本: 1.0
* @時間: 2002-10-08
*/
/*****************************************************************************
* 修改記錄清單
* 修改人 :
* 修改記錄:
* 修改時間:
* 修改描述:
*
*/
package com.corp.bisc.ebiz.base;
import java.sql.*;
import java.util.*;
import com.corp.bisc.ebiz.exception.*;
/**
* LogManager為系統(tǒng)中其他模塊提供統(tǒng)一的寫日志功能. 各模塊可根據(jù)需要
* 選用LogManager提供的幾個重載write()方法來寫日志。
*
* @author: Yang Jiang Ming
* 20011024, Yang Jiang Ming: 重新整理,應用數(shù)據(jù)對象類
*/
public class LogManager {
/** 日志類型:普通日志 */
public final static short LOGTYPE_APP = 1;
/** 日志類型:警告日志 */
public final static short LOGTYPE_APPWARNING = 2;
/** 日志類型:錯誤日志 */
public final static short LOGTYPE_APPERROR = 3;
protected static LogManager m_logManager = null;
/**
* 構造函數(shù)。
*/
public LogManager() {
super();
}
static public LogManager getManager() {
if (m_logManager == null)
m_logManager = new LogManager();
return m_logManager;
}
/**
* 此處插入方法描述。
* 創(chuàng)建日期:(2002-6-24 21:18:01)
* @return java.lang.String
* @param typeid short
*/
public String getTypeName(short typeid) {
String result="";
switch(typeid){
case LogManager.LOGTYPE_APP :
result = "common log";
break;
case LogManager.LOGTYPE_APPERROR :
result = "application error ";
break;
case LogManager.LOGTYPE_APPWARNING:
result = "application warning";
break;
}
return result;
}
/**
* 此處插入方法描述。
* 創(chuàng)建日期:(2002-6-24 21:14:04)
* @param args java.lang.String[]
*/
public static void main(String[] args) {
Connection conn = null;
PreparedStatement ps = null;
try {
//oracle use
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:oci8:@ptlintdb", "ssebizex", "ssebizex");
String sql = "insert into temp values(?)";
ps = conn.prepareStatement(sql);
String str = "歐陽璟";
byte[] bt = str.getBytes();
String strnew = new String(bt,"GB2312");
ps.setString(1,strnew);
ps.executeUpdate();
}
catch(Exception e){
System.out.println("error when get database connection ");
System.out.println(e);
}finally{
try{
ps.close();
conn.close();
}catch(Exception ex){
}
}
}
/**
* 寫日志。
* @param moduleID 模塊編號
* @param typeID 日志類型編號
* @param userID 該日志涉及的用戶的編號
* @param operation 該日志所記錄的操作的類型
*
* @exception LogException 寫日志出錯。
*/
public void write(Connection conn,String moduleID, short typeID, long userID, String operation)
throws LogException {
write(conn,moduleID, typeID, userID, operation, "", "", "", "");
}
/**
* 寫日志。
* @param moduleID 模塊編號
* @param typeID 日志類型編號
* @param userID 該日志涉及的用戶的編號
* @param operation 該日志所記錄的操作的類型
* @param description 操作的描述
* @param result 操作結果
*
* @exception LogException 寫日志出錯。
*/
public void write(
Connection conn,
String moduleID,
short typeID,
long userID,
String operation,
String description,
String result)
throws LogException {
write(conn,moduleID, typeID, userID, operation, description, result, "", "");
}
/**
* 寫日志。
* @param moduleID 模塊編號
* @param typeID 日志類型編號
* @param userID 該日志涉及的用戶的編號
* @param operation 該日志所記錄的操作的類型
* @param description 操作的描述
* @param result 操作結果
* @param remark1 備注1
* @param remark2 備注2
*
* @exception LogException 寫日志出錯。
*/
public void write(
Connection conn,
String moduleName,
short typeID,
long userID,
String operation,
String description,
String result,
String remark1,
String remark2)
throws LogException {
try {
//判斷是否要記錄日志
Module module = Module.fromDB(conn,moduleName);
if (module != null)
if(module.isNeedLog()) { //要記錄
Log log = new Log();
if (log.isNewDataObject())
log.logID = KeyContainer.getOracleSequence(conn,"S_TCMM_LOG");
log.moduleID = module.getModuleID();
log.typeID = typeID;
log.typeName = getTypeName(typeID);
log.userID = userID;
log.operation = operation;
log.description = description;
log.result = result;
log.remark1 = remark1;
log.remark2 = remark2;
log.update(conn);
}
} catch (Exception e) {
e.printStackTrace();
throw new LogException();
} finally {
//ConnPoolHandler.getHandle().closeConnection(conn);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -