java学习-编程式的事务管理【java培训】

java学习-编程式的事务管理【java培训】

ID:35514939

大小:37.79 KB

页数:6页

时间:2019-03-25

java学习-编程式的事务管理【java培训】_第1页
java学习-编程式的事务管理【java培训】_第2页
java学习-编程式的事务管理【java培训】_第3页
java学习-编程式的事务管理【java培训】_第4页
java学习-编程式的事务管理【java培训】_第5页
资源描述:

《java学习-编程式的事务管理【java培训】》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、http://www.lampbrother.netJava学习-编程式的事务管理【Java培训】编程式事务提供了TransactionTemplate模板类,该类可以大大减少事务操作的代码。因此TransactionTemplate采用Callback避免让开发者重复书写其打开事务、提交事务及回滚事务等代码,同时TransactionTemplate无须书写大量的try..catch块。HibernateTemplate必须提供PlatformTransactionManager实例。该实例既可以在代码中手动设置,也可以使用Spring的依赖注入。总之,只要获取了PlatformTra

2、nsactionManager引用,TransactionTemplate就可以完成事务操作。使用TransactionTemplate不需要显式地开始事务,甚至不需要显式地提交事务。这些步骤都由模板完成。但出现异常时,应通过TransactionStatus的setRollbackOnly显式回滚事务。TransactionTemplate的execute方法接收一个TransactionCallback实例。Callback也是Spring的经典设计,用于简化用户操作,下面就帮大家总结了一些TransactionCallback包含的方法:如下。•ObjectdolnTransact

3、ion(TransactionStatusstatus)。该方法的方法体就是事务的执行体。如果事务的执行体没有返回值,则可以使用TransactionCallbackWithoutResultl类的实例。这是个抽象类,不能直接实例化,只能用于创建匿名内部类。它也是TransactionCallback接口的子接口,该抽象类包含一个抽象方法:•voiddolnTransactionWithoutResult(TransactionStatusstatus)该方法与http://www.lampbrother.netdolnTransaction的效果非常相似,区别在于该方法没有返回值,即事

4、务执行体无须返回值。在下面的示例中,PlatformTransactionManager实例采用适用于Hibernate的事务管理器来实现类HibernateTransactionManager,该实现类是个局部事务管理器,容器中仅仅部署了该事务管理器bean,因此应在代码中于动为TransactionTemplate注入事务管理器bean。下面是Hibernate局部事务管理的配置文件的源代码:

5、AN//EN"''http://www.springfrarnework.org/dtd/sp工rng-beans.dtd">corn.rnysql.jdbc.Driver

6、value>jdbc:rnysql://wonder:3306/j2eehttp://www.lampbrother.netrootpass