您的位置:首页 > 编程语言 > Java开发

Spring中TransactionTemplate 的配置及使用方法

2017-07-08 17:44 507 查看
1、

在一般的交易类程序中会频繁的使用事务来约束重要或关键的动作,已保证交易行为的整体性和一致性。

下例中是在spring框架中使用JDBC连接数据库的事务示例。
service层源代码如下:

@Override
public void savePj(final String pjdxId, final int pjzt, final ProUser proUser, final int pjjg, final String ejpjjg, final String pjztbs) {
this.transactionTemplate.execute( new TransactionCallback<Object>() {
@Override
public Object doInTransaction(TransactionStatus status) {
switch (pjzt) {
case FwpjConstant.PJZT_AJ:
updateAj(pjdxId, proUser, pjjg, ejpjjg, pjztbs);
break;
case FwpjConstant.PJZT_WSLA:
updateWsla(pjdxId, proUser, pjjg, ejpjjg, pjztbs);
break;
case FwpjConstant.PJZT_DZSD:
// TODO 电子送达评价
break;
}
return status;
}
});
}

2、service配置
<bean id="fwpjService"
class="com.thunisoft.susong51.fwpj.service.impl.FwpjServiceImpl">
<property name="fwpjDao" ref="fwpjDao"></property>
<property name="transactionTemplate" ref="transactionTemplate" />
<property name="ajSsdlrService" ref="ajSsdlrService" />
<property name="dsrService" ref="dsrService"></property>
<property name="proUserService" ref="proUserService" />
<property name="ajService" ref="ajService"></property>
<property name="layyDao" ref="layyDao" />
</bean>3、applicationContext.xml的配置
<bean id="transactionTemplate"
class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="transactionManager" />
</bean>
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="dataSource" ref="dataSource" />
<property name="sessionFactory" ref="sessionFactory" />
<property name="nestedTransactionAllowed">
<value>true</value>
</property>
</bean>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐