1. 程式人生 > >寫一下今天處理的spring 事務處理的問題吧

寫一下今天處理的spring 事務處理的問題吧

前言:第一篇博文,走上程式猿這條路一年多了,學會了很多,也積累了很多,不知道從哪開始分享下來,等我想好了寫些什麼再寫點優質的博文吧,今天先寫下今天處理的一個關於spring 事務處理的問題;

因為最近由於業務需求所以要加spring 事務,百度了很多大大寫的,自己實現後也總結下

spring事務處理應用場景:對於資料庫的insert,update,delete時使用,主要還是看具體業務要求,一般情況下是insert,update,delete時使用。

使用前檢查:1.對應的資料庫表的表引擎要支援事務。mysql資料庫中的MyISAM表引擎由於加快了insert,update速度,所以是不支援事務處理的,要更改為InnoDB引擎。ps:我就是死在這裡了,所有的東西都配置完,才發現我的天,表引擎不對。

下面正式開始:

首先是xml了

           <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 使用annotation定義事務 -->
<tx:annotation-driven transaction-manager="transactionManager"/>

我使用的是註解形式的所以直接在service類上直接使用@Transactional的方式這樣就可以了。還有很多種方式具體的看下面幾位大大的連結就好了。

業務邏輯比較複雜還是在service實現類上控制的好。

幾種spring 事務的增加方式點選開啟連結