真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JavaBean中如何使用JDBC連接進(jìn)行事務(wù)處理

這篇文章主要介紹JavaBean中如何使用JDBC連接進(jìn)行事務(wù)處理,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)公司成立10余年來,這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供成都網(wǎng)站設(shè)計、做網(wǎng)站、網(wǎng)站策劃、網(wǎng)頁設(shè)計、域名與空間、網(wǎng)絡(luò)營銷、VI設(shè)計、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶體驗好、性價比高、打開快等等,這些對于網(wǎng)站建設(shè)都非常重要,成都創(chuàng)新互聯(lián)公司通過對建站技術(shù)性的掌握、對創(chuàng)意設(shè)計的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。

在JavaBean數(shù)據(jù)庫操作中,一項事務(wù)是指由一條或多條對數(shù)據(jù)庫更新的SQL語句所組成的一個不可分割的工作單元。只有當(dāng)事務(wù)處理中的所有操作都正常完成了,整個事務(wù)才能被提交到數(shù)據(jù)庫,如果有一項操作沒有完成,就必須撤消整個事務(wù)。我們通過提交commit()或是回滾rollback()來結(jié)束事務(wù)處理的操作。關(guān)于事務(wù)操作的方法都位于接口java.sql.Connection中。

JavaBean在***次建立與數(shù)據(jù)庫的連接時,在缺省情況下,JDBC連接是在自動提交模式下的, JDBC API中,可以通過調(diào)用setAutoCommit(false) 來禁止自動提交事務(wù)。然后就可以把多條更新數(shù)據(jù)庫的SQL語句做為一個事務(wù)處理,在所有操作完成之后,調(diào)用commit()來進(jìn)行整體提交。倘若其中一項SQL操作失敗,就不會執(zhí)行commit()方法,而是產(chǎn)生相應(yīng)的sqlexception,此時就可以捕獲異常代碼塊中調(diào)用rollback()方法撤消事務(wù)。下面是一個例子;

比如:有兩張表,一個記錄用戶帳戶(useraccount),一個是系統(tǒng)帳(sysaccount),現(xiàn)在有一個用戶要向系統(tǒng)寄錢買東西,就要此行下面兩條語句:

String sql1 = "update useraccount set monery=monery-1000 where name='username'";
String sql2 = "update sysaccount set monery=monery+1000 where name='sysname'";

但如果***條執(zhí)行了而第二條語句執(zhí)行出錯了就會造成不良后果。這是就可以用手動提交的方式來防止這種事情的發(fā)生:主要代碼:

  1. try{  

  2. .  

  3. .  

  4. .   

  5. conn=DriverManager.getConnection("..."); //鏈接數(shù)據(jù)庫  

  6.  

  7. conn.setAutoCommit(false);//禁止自動提交事務(wù)  

  8. stmt = conn.Create....  

  9. String sql1 = "update useraccount set monery=monery-1000 where name='usename'";  

  10. String sql2 = "update sysaccount set monery=monery+1000 where name='sysname'";   

  11. stmt=conn.createStatement();   

  12. stmt.executeUpdate(sql1);   

  13. stmt.executeUpdate(sql2);   

  14.  

  15. conn.commit(); //統(tǒng)一提交。 

  16.  

  17. }catch(SQLException e){   

  18. conn.rollback(); //倘若其中一項sql操作失敗,就不會執(zhí)行commit()方法,
    //而是產(chǎn)生相應(yīng)的sqlexception,此時就可以捕獲 異常代碼塊中調(diào)用rollback()方法撤消事務(wù)。  

  19. e.printStackTrace();   

  20. }   

  21. finally{   

  22. if(stmt!=null){   

  23. stmt.close();   

  24. }   

  25. if(conn!=null){   

  26. stmt.close();   

  27. }   

以上是“JavaBean中如何使用JDBC連接進(jìn)行事務(wù)處理”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


標(biāo)題名稱:JavaBean中如何使用JDBC連接進(jìn)行事務(wù)處理
標(biāo)題URL:http://weahome.cn/article/jjohps.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部