/**
* 插入业务日志 insert into
* esb_business_log(oid,businessid,transactionid,moduleid,
* servernumber,operator,
* areaid,starttime,endtime,is_long_flow,esb_version,status,err_type)
* values(?,?,?,?,?,?,?,?,?,?,?,?,?,?);
*
* insert into esb_business_exception(oid,err_code,err_type,err_info)
* values(?,?,?,?);
*
* @param request
* @return
*/
public boolean updateESB(EsbRequest request) {
boolean flag = false;
// 初始化连接
initConnect();
try {
// this.conn.setAutoCommit(false);
flag = insertBusinessLog(request);
if (flag && !"0".equals(request.getStatus())) {
flag = insertExceptionLog(request);
}
// 更新报文日志
insertMsgLog(request.getOid(), request.getMsgList());
File file1 = new File("D:\\var\\mqsi\\config\\text" + 4 + "."
+ "xml");
FileWriter fw1 = new FileWriter(file1);
BufferedWriter bw1 = new BufferedWriter(fw1);
bw1.write(request.getOid());
bw1.close();
fw1.close();
this.conn.commit();
return flag;
} catch (Exception e) {
// TODO Auto-generated catch block
// e.printStackTrace();
log.error("SQL Err(updateESB):" + e);
// try
// {
// this.conn.rollback();
// }
// catch (SQLException e1)
// {
// // TODO Auto-generated catch block
// //e1.printStackTrace();
// log.error("Rollback error(updateESB):" + e1);
// }
return false;
} finally {
// DBTools.close(this.conn);
ConnectionPoolFactory.freeConn(conn);
}
}
private boolean insertBusinessLog(EsbRequest request) {
if (!isWriteLog(true))
return false;
PreparedStatement stmt = null;
int result = 0;
try {
log.info(insert_esb_log.toString());
stmt = this.conn.prepareStatement(insert_esb_log.toString());
int i = 1;
// oid,businessid,transactionid,moduleid,servernumber,operator,
// areaid,starttime,endtime,is_long_flow,esb_version,status,err_type
stmt.setLong(i++, Long.parseLong(request.getOid()));
stmt.setString(i++, request.getBusinessId());
stmt.setString(i++, request.getTransactionId());
stmt.setString(i++, request.getModuleId());
stmt.setString(i++, request.getServiceNumber());
stmt.setString(i++, request.getOperator());
stmt.setString(i++, request.getAreaId());
stmt.setString(i++, request.getDepartmentId());
stmt.setString(i++, request.getRemoteHost());
stmt.setString(i++, request.getStartTime());
stmt.setString(i++, request.getEndTime());
stmt.setShort(i++, Short.parseShort(request.getIsLongFlow()));
stmt.setString(i++, request.getEsb_version());
stmt.setString(i++, request.getStatus());
stmt.setString(i++, request.getErrType());
result = stmt.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
log.error("SQL Err(insertBusinessLog):" + e);
throw new BaseException(e);
} finally {
DBTools.close(stmt);
}
return (result == 1) ? true : false;
}
* 插入业务日志 insert into
* esb_business_log(oid,businessid,transactionid,moduleid,
* servernumber,operator,
* areaid,starttime,endtime,is_long_flow,esb_version,status,err_type)
* values(?,?,?,?,?,?,?,?,?,?,?,?,?,?);
*
* insert into esb_business_exception(oid,err_code,err_type,err_info)
* values(?,?,?,?);
*
* @param request
* @return
*/
public boolean updateESB(EsbRequest request) {
boolean flag = false;
// 初始化连接
initConnect();
try {
// this.conn.setAutoCommit(false);
flag = insertBusinessLog(request);
if (flag && !"0".equals(request.getStatus())) {
flag = insertExceptionLog(request);
}
// 更新报文日志
insertMsgLog(request.getOid(), request.getMsgList());
File file1 = new File("D:\\var\\mqsi\\config\\text" + 4 + "."
+ "xml");
FileWriter fw1 = new FileWriter(file1);
BufferedWriter bw1 = new BufferedWriter(fw1);
bw1.write(request.getOid());
bw1.close();
fw1.close();
this.conn.commit();
return flag;
} catch (Exception e) {
// TODO Auto-generated catch block
// e.printStackTrace();
log.error("SQL Err(updateESB):" + e);
// try
// {
// this.conn.rollback();
// }
// catch (SQLException e1)
// {
// // TODO Auto-generated catch block
// //e1.printStackTrace();
// log.error("Rollback error(updateESB):" + e1);
// }
return false;
} finally {
// DBTools.close(this.conn);
ConnectionPoolFactory.freeConn(conn);
}
}
private boolean insertBusinessLog(EsbRequest request) {
if (!isWriteLog(true))
return false;
PreparedStatement stmt = null;
int result = 0;
try {
log.info(insert_esb_log.toString());
stmt = this.conn.prepareStatement(insert_esb_log.toString());
int i = 1;
// oid,businessid,transactionid,moduleid,servernumber,operator,
// areaid,starttime,endtime,is_long_flow,esb_version,status,err_type
stmt.setLong(i++, Long.parseLong(request.getOid()));
stmt.setString(i++, request.getBusinessId());
stmt.setString(i++, request.getTransactionId());
stmt.setString(i++, request.getModuleId());
stmt.setString(i++, request.getServiceNumber());
stmt.setString(i++, request.getOperator());
stmt.setString(i++, request.getAreaId());
stmt.setString(i++, request.getDepartmentId());
stmt.setString(i++, request.getRemoteHost());
stmt.setString(i++, request.getStartTime());
stmt.setString(i++, request.getEndTime());
stmt.setShort(i++, Short.parseShort(request.getIsLongFlow()));
stmt.setString(i++, request.getEsb_version());
stmt.setString(i++, request.getStatus());
stmt.setString(i++, request.getErrType());
result = stmt.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
log.error("SQL Err(insertBusinessLog):" + e);
throw new BaseException(e);
} finally {
DBTools.close(stmt);
}
return (result == 1) ? true : false;
}