spring聲明式事物

只須要在配置文件中將數據源配置事物,而後在方法中將其聲明成事物便可java

XML文件中配置:spring

<!-- 配置事務管理器 -->
	<bean id="transactionManager" 
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"></property>
	</bean>
	
	<!-- 啓用事務註解 -->
	<tx:annotation-driven transaction-manager="transactionManager"/>

事物註解:ui

@TransActional

便可將此方法聲明爲事物spa


事物的傳播行爲:@Transactional(propagation=required)code

經常使用的是required和required_new 
事務

required:若是有事物在運行,當前的方法就在這個事物內運行,不然就啓動一個新的事物,並在本身的事物內運行(事物A下       有多個B事物,只要有一個B拋出異常則A事物失敗所有回滾)io

required_new :當前的方法必須啓動新的事物,並在他本身的事物內運行,若是有事物正在運行應該將他掛起(A下面有多個B事物,B運行則A掛起,某個B拋出異常,此B前面執行的不回滾)class

相關文章
相關標籤/搜索