Spring 基於xml和註解的事務

2021-10-01 19:59:13 字數 1336 閱讀 9848

org.springframework

spring-tx

5.0.2.release

需要新增事務管理的tx約束,同時也需要aop的約束

<?xml version="1.0" encoding="utf-8"?>

事務的屬性

propagation--------用於指定事務的傳播行為。預設值是required,表示一定會有事務,增刪改的選擇。查詢方法可以選擇supports。

read-only--------用於指定事務是否唯讀。只有查詢方法才能設定為true。預設值是false,表示讀寫。

isolation--------用於指定事務的隔離級別。預設值是default,表示使用資料庫的預設隔離級別。

timeout--------用於指定事務的超時時間,預設值是-1,表示永不超時。如果指定了數值,以秒為單位。

rollback-for--------用於指定乙個異常,當產生該異常時,事務回滾,產生其他異常時,事務不回滾。沒有預設值。表示任何異常都回滾。

no-rollback-for--------用於指定乙個異常,當產生該異常時,事務不回滾,產生其他異常時事務回滾。沒有預設值。

事務的傳播特性

propagation_required:  如果存在乙個事務,則支援當前事務。如果沒有事務則開啟

propagation_supports:  如果存在乙個事務,支援當前事務。如果沒有事務,則非事務的執行

propagation_mandatory:  如果已經存在乙個事務,支援當前事務。如果沒有乙個活動的事務,則丟擲異常。

propagation_requires_new:  總是開啟乙個新的事務。如果乙個事務已經存在,則將這個存在的事務掛起。

propagation_not_supported:  總是非事務地執行,並掛起任何存在的事務。

propagation_never:  總是非事務地執行,如果存在乙個活動事務,則丟擲異常

propagation_nested:如果乙個活動的事務存在,則執行在乙個巢狀的事務中. 如果沒有就開啟事務 

1、新增context約束,開啟註解掃瞄

2、配置事務管理器

3、開啟spring對註解事務的支援

4、在需要事務支援的地方(類上或者方法上)使用以下註解

@transactional

Spring 基於XML和註解的宣告式事務控制

配置事務管理器 配置事務通知 配置切入點表示式 配置切入點與事務通知的依賴關係 配置事務的屬性 context component scan base package com.demo context component scan jdbcutils class com.demo.utils.jdb...

AspectJ基於xml和基於註解

一 基於xml 執行的切入點中具體方法有返回值,則方法結束會立即執行後置通知,然後再執行環繞通知的放行之後的 2 連線點即所有可能的方法,切入點是正真被切的方法,連線點方法名 其中,只有環繞通知的切入點引數不一樣,是可以放行的切入點 3 異常通知是處理異常 切面類中的異常通知的方法引數列表中異常引數...

Spring基於註解的自動裝配XML檔案模板

匯入命名空間並啟用 xmlns xmlns xsi xmlns context xsi schemalocation context annotation config person class com.xzf.pojo.person bean cat class com.xzf.pojo.cat ...