spring事务管理理解分析

spring事务管理理解分析

ID:10002245

大小:35.30 KB

页数:0页

时间:2018-05-20

spring事务管理理解分析_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《spring事务管理理解分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、spring自建事务管理模块。而且这个事务管理是一个抽象设计,可以应用到很多场合,包括普通的DataSource,jta,jms和hibernate上。要正确使用spring的事务,首先需要了解spring在事务设计上的一些概念统观spring事务,围绕着两个核心PlatformTransactionManager和TransactionStatusPlatformTransactionManager直译过来就是平台相关事务,这里的平台指的是“事务源”,包括刚才我说的DataSource,jta等等。这些无一不是一

2、个事务源。广义的说,凡是可以完成事务性操作的对象,都可以设计出相对应的PlatformTransactionManager,只要这个事务源支持commit,rollback和getTransaction语意。查看spring代码,可以发现这些manager实现事务,就是调用事务源的事务操作方法比如HibernateTransactionManagerJava代码 1.protected void doCommit(DefaultTransactionStatus status); {  2.        Hibe

3、rnateTransactionObject txObject = (HibernateTransactionObject); status.getTransaction();;  3.        if (status.isDebug();); {  4.            logger.debug("Committing Hibernate transaction on session [" +  5.                    txObject.getSessionHolder();.get

4、Session(); + "]");;  6.        }  7.        try {  8.            txObject.getSessionHolder();.getTransaction();.commit();;  9.        }  10....  11.  12.    }  protectedvoiddoCommit(DefaultTransactionStatusstatus);{HibernateTransactionObjecttxObject=(Hibernate

5、TransactionObject);status.getTransaction();;if(status.isDebug(););{logger.debug("CommittingHibernatetransactiononsession["+txObject.getSessionHolder();.getSession();+"]");;}try{txObject.getSessionHolder();.getTransaction();.commit();;}...}jdbc的DataSourceTransa

6、ctionManagerJava代码 1.protected void doCommit(DefaultTransactionStatus status); {  2.        DataSourceTransactionObject txObject = (DataSourceTransactionObject); status.getTransaction();;  3.        Connection con = txObject.getConnectionHolder();.getConnectio

7、n();;  4.        if (status.isDebug();); {  5.            logger.debug("Committing JDBC transaction on connection [" + con + "]");;  6.        }  7.        try {  8.            con.commit();;  9.        }  10.        ...  11.    }  protectedvoiddoCommit(Defaul

8、tTransactionStatusstatus);{DataSourceTransactionObjecttxObject=(DataSourceTransactionObject);status.getTransaction();;Connectioncon=txObject.getConnectionHolder();.getConnection();

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。