请问 关于 捕捉 sql异常的问题
try {
conn.setAutoCommit(false);
/**
*
*
*/
conn.commit();
} catch (SQLException e) {
try {
conn.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}
这种写法,先设为不自动提交事务,处理完一堆sql后,手动提交,如果出现问题就回滚事务。
基本的增删改查已经可以用如下面代码这么实现了:
TApp app=new TApp("QQ","腾讯QQ");
TApp app2=new TApp();
app2.setAppDesc("更新后的描述信息");
POFactory.insert(app);
POFactory.update(app, app2);
当第一图中的注释部分是第二图中类似的代码时,就需要事务了。
我用组合重组(好像是这么叫把?)模式复用了java.sql.Connection的代码,现在我想不写代码或者写很少在catch块中让程序自己知道出了异常然后自己去回滚,貌似用观察者模式可以实现的吧?还要写代码的吧?不然的话要先从IConnection 中getConnection然后rollback,这样就越封装写得越复杂了..........求指教
补充:Java , Java EE