确实有点乱啊,我就按照你写的意思给你大概写个样子
public void update(Connection conn) throws AppException {
String sql = "UPDATE ......";
try {
PreparedStatement sttSql = conn.prepareStatement(sql);
try {
......
sttSql.executeUpdate();
conn.commit(); } finally {
sttSql.close();
}
} catch (SQLException e) {
conn.rollback();
logger.error("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl","transferAccount",sqlEx);
throw new AppException("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl::transferAccount::SQLException");
}
}
public List<String> select(Connection conn) throws AppException {
String sql = "SELECT ......";
try {
PreparedStatement sttSql = conn.prepareStatement(sql);
try {
sttSql.setString(1, mainUnit.getParam1());
ResultSet rs = sttSql.executeQuery();
try {
final List<String> list = new ArrayList<String>();
while (rs.next()) {
......
}
return list;
} finally {
rs.close();
}
} finally {
sttSql.close();
}
} catch (Exception e) {
logger.error("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl","transferAccount",sqlEx);
throw new AppException("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl::transferAccount::SQLException");
}
}
public void update(Connection conn) throws AppException {
String sql = "UPDATE ......";
try {
PreparedStatement sttSql = conn.prepareStatement(sql);
try {
......
sttSql.executeUpdate();
conn.commit(); } finally {
sttSql.close();
}
} catch (SQLException e) {
conn.rollback();
logger.error("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl","transferAccount",sqlEx);
throw new AppException("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl::transferAccount::SQLException");
}
}
public List<String> select(Connection conn) throws AppException {
String sql = "SELECT ......";
try {
PreparedStatement sttSql = conn.prepareStatement(sql);
try {
sttSql.setString(1, mainUnit.getParam1());
ResultSet rs = sttSql.executeQuery();
try {
final List<String> list = new ArrayList<String>();
while (rs.next()) {
......
}
return list;
} finally {
rs.close();
}
} finally {
sttSql.close();
}
} catch (Exception e) {
logger.error("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl","transferAccount",sqlEx);
throw new AppException("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl::transferAccount::SQLException");
}
}
解决方案 »
- 大家帮我看看缺少了什么jar包?谢谢
- 【求源码】求SSH2真实项目源码
- Struts2的Action在j2ee层次中属于哪一层
- 当工程下面的web.xml文件被更改后,如何使tomcat不自动重新加载?
- struts2在iterator标签中显示
- weblogic无法启动!!!
- 在哪儿才能下载到javax.servlet.jar文件的源代码
- 大家帮我看看这样的查询用hibernate该怎么做?
- jasper3.7.3 textField与staticText的字体编码问题:新细明体(PMingLiU-TW),繁体字显示成"?",求教jasper报表高手
- 有没有用过Quartz的,给个sample谢谢!
- eclipse3.2如何部署struts环境
- web services 问题:客户端怎么获取服务端的证书
public void confirmAccount(TransferAccount domain, Connection conn) throws AppException {
double fromBalance = 0 ;
double toBalance = 0;
int fromID = 0; try{ String sqlFrom="SELECT B.ID,B.BALANCE FROM HU.BANK_ACCOUNT AS B WHERE B.ACCOUNT_NO=?"; PreparedStatement stat = conn.prepareStatement(sqlFrom); stat.setString(1,domain.getFromAccount());
ResultSet rs=stat.executeQuery();
if(rs.next()){
fromID = rs.getInt(1);
fromBalance = rs.getDouble(2);
}
String sqlFromAmount = "UPDATE HU.BANK_ACCOUNT AS B SET B.BALANCE=? WHERE B.ACCOUNT_NO=?";
stat = conn.prepareStatement(sqlFromAmount);
stat.setDouble(1,fromBalance-domain.getAmount());
stat.setString(2,domain.getFromAccount());
stat.execute();
String sqlTo="SELECT B.BALANCE FROM HU.BANK_ACCOUNT AS B WHERE B.ACCOUNT_NO=?";
stat = conn.prepareStatement(sqlTo);
stat.setString(1,domain.getToAccount());
rs=stat.executeQuery();
if(rs.next()){
toBalance = rs.getDouble(1);
}
System.out.println(2);
String sqlToAmount = "UPDATE HU.BANK_ACCOUNT AS B SET B.BALANCE=? WHERE B.ACCOUNT_NO=?";
stat = conn.prepareStatement(sqlFromAmount);
stat.setDouble(1,toBalance+domain.getAmount());
stat.setString(2,domain.getToAccount());
stat.execute();
String sql = "INSERT INTO HU.TRANSFER_INFO VALUES(?,?,?,?,current timestamp)";
stat = conn.prepareStatement(sql);
stat.setInt(1,fromID);
stat.setString(2,domain.getFromAccount());
stat.setString(3,domain.getToAccount());
stat.setDouble(4,domain.getAmount());
stat.execute(); rs.close();
stat.close(); }catch(SQLException sqlEx){
logger.error("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl","transferAccount",sqlEx);
throw new AppException("com.argorse.xframework.banksystem.dao.OnLineBankDAOImpl::transferAccount::SQLException");
}
}