[原创]J2EE 事务处理方式_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2294 | 回复: 0   主题: [原创]J2EE 事务处理方式        下一篇 
xiujiang.chen
注册用户
等级:上士
经验:267
发帖:9
精华:0
注册:1970-1-1
状态:离线
发送短消息息给xiujiang.chen 加好友    发送短消息息给xiujiang.chen 发消息
发表于: IP:您无权察看 2017-2-24 15:46:19 | [全部帖] [楼主帖] 楼主

J2EE 事务处理方式

1. 本地事务:紧密依赖于资源管理器即特定的资源(例如数据库连接 ),事务处理局限在当前事务资源内。此种事务处理方式不存在对应用服务器的依赖,因而部署灵活却无法支持多数据源的分布式事务。在数据库连接中使用本地事务示例如下:


 public void transferAccount() { 
     Connection conn = null; 
     Statement stmt = null; 
     try{ 
       conn = getDataSource().getConnection(); 
       // 将自动提交设置为 false,
       //若设置为 true 则数据库将会把每一次数据更新认定为一个事务并自动提交
       conn.setAutoCommit(false);
      
       stmt = conn.createStatement(); 
       // 将 A 账户中的金额减少 500 
       stmt.execute("\
             update t_account set amount = amount - 500 where account_id = 'A'");
       // 将 B 账户中的金额增加 500 
       stmt.execute("\
             update t_account set amount = amount + 500 where account_id = 'B'");
      
       // 提交事务
         conn.commit();
       // 事务提交:转账的两步操作同时成功
     } catch(SQLException sqle){      
       try{ 
         // 发生异常,回滚在本事务中的操做
                conn.rollback();
         // 事务回滚:转账的两步操作完全撤销
                 stmt.close(); 
                 conn.close(); 
       }catch(Exception ignore){ 
        
       } 
       sqle.printStackTrace(); 
     } 
   }

2. 分布式事务处理 : Java 事务编程接口(JTA:Java Transaction API)和 Java 事务服务 (JTS;Java Transaction Service) 为 J2EE 平台提供了分布式事务服务。分布式事务(Distributed Transaction)包括事务管理器(Transaction Manager)和一个或多个支持 XA 协议的资源管理器 ( Resource Manager )。

分布式事务是分布式系统的基础,也是JAVA EE中很重要的一项技术。由于本人知识有限,敬请指教。

分享一个JNDI博客的链接:

    https://www.ibm.com/developerworks/cn/java/j-jndi/


该贴被xiujiang.chen编辑于2017-2-24 15:46:52



赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论