传统的JDBC数据库访问技术-事务处理

传统的 Jdbc数据访问技术的一般的流程是:首先获取数据源,然后根据数据源

获取数据连接,接着设定事务开始,执行相应的操作,最后执行成功则提交,执行失败则回

滚。下面,通过示例来看 JDBC中是怎么使用事务处理的,示例代码如下:

 

[Java]  view plain copy
  1. Public Class HelloWorld {  
  2. Connection conn =null;  
  3. Statement stmt = null;  
  4. try {  
  5. //获取数据连接  
  6. Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);  
  7. conn    =   DriverManager.getConnection(jdbc:microsoft:sqlserver://localhost:1433/stdb,  
  8. admin, admin);  
  9. //开始启动事务  
  10. conn.setAutoCommit(false);  
  11. stmt =conn.createStatement();  
  12. //执行相应操作  
  13. stmt.executeUpdate("insert into hello values(1,‘gf’, ‘HelloWorld’)'");  
  14. //执行成功则提交事务  
  15. conn.commit();  
  16. catch (SQLException e)   {  
  17. if (conn != null) {  
  18. try {   
  19. //执行不成功,则回滚  
  20. conn.rollback();  
  21. catch (SQLException ex) {  
  22. System.out.println(“数据连接有异常” + ex);  
  23. }   
  24. }             
  25. finally {  
  26. if (stmt != null) {  
  27. try {   
  28. stmt.close();  
  29. catch (SQLException ex) {  
  30. System.out.println(“执行操作有异常” + ex);  
  31. }   
  32. }   
  33. if (conn != null) {  
  34. try {   
  35. conn.close();  
  36. catch (SQLException ex) {  
  37. System.out.println(“数据连接有异常” + ex);  
  38. }   
  39. }  
  40. ]  
  41. }  
  42. <pre></pre>  
  43. <pre></pre>  
  44. <p> </p>  
  45. <p class="MsoNormal" align="left" style="margin:0cm 0cm 0pt 56.65pt; text-align:left; line-height:13.3pt">  
  46. <span style="font-family:宋体; color:black; font-size:11pt">上面代码只是一个使用</span><span style="color:black; font-size:11pt"> Jdbc</span><span style="font-family:宋体; color:black; font-size:11pt">连接的示例,在实际的应用中,是不会这样用的,一方面编写</span><span style="color:black; font-size:11pt"></span></p>  
  47. <p class="MsoNormal" align="left" style="margin:0cm 0cm 0pt 56.65pt; text-align:left; line-height:16pt">  
  48. <span style="font-family:宋体; color:black; font-size:10pt">代码繁琐,一方面效率太低,而</span><span style="color:black; font-size:10pt"> Spring</span><span style="font-family:宋体; color:black; font-size:10pt">在持久层这方面提供了更好的支持,对</span><span style="color:black; font-size:10pt">  
  49.  Jdbc</span><span style="font-family:宋体; color:black; font-size:10pt">进行了</span><span style="color:black; font-size:10pt"></span></p>  
  50. <p class="MsoNormal" align="left" style="margin:0cm 0cm 0pt 56.65pt; text-align:left; line-height:15.3pt">  
  51. <span style="font-family:宋体; color:black; font-size:11pt">良好的封装。</span><span style="color:black; font-size:11pt"></span></p>  
  52. <p class="MsoNormal" align="left" style="margin:0cm 0cm 0pt 77.3pt; text-align:left; line-height:16.65pt">  
  53. <span style="font-family:宋体; color:black; font-size:10pt">注意:本章示例中使用的数据库表名为</span><span style="color:black; font-size:10pt"> hello</span><span style="font-family:宋体; color:black; font-size:10pt">,该表包含</span><span style="color:black; font-size:10pt"3</span><span style="font-family:宋体; color:black; font-size:10pt">个字段:</span><span style="color:black; font-size:10pt">id</span><span style="font-family:宋体; color:black; font-size:10pt">、</span><span style="color:black; font-size:10pt">name</span><span style="font-family:宋体; color:black; font-size:10pt">、</span><span style="color:black; font-size:10pt">msg</span><span style="font-family:宋体; color:black; font-size:10pt">。其</span><span style="color:black; font-size:10pt"></span></p>  
  54. <p><span style="font-family:宋体; color:black; font-size:11pt">中</span><span style="font-family:'Times New Roman'; color:black; font-size:11pt"> id</span><span style="font-family:宋体; color:black; font-size:11pt">为整型,其余</span><span style="font-family:'Times New Roman'; color:black; font-size:11pt">  
  55.  2</span><span style="font-family:宋体; color:black; font-size:11pt">个都是字符串类型。</span></p>  
  56. <pre></pre>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值