事務保證多條sql語句 要麼執行,要麼都不執行!
四大特性:高頻面試題
1.配置事務管理器
2.註解式事務
使用
package com.qfedu.service.impl;
import com.qfedu.dao.accountdao;
import com.qfedu.service.accountservice;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.stereotype.service;
import org.springframework.transaction.annotation.isolation;
import org.springframework.transaction.annotation.propagation;
import org.springframework.transaction.annotation.transactional;
@service
public class accountserviceimpl implements accountservice
return false;}}
呼叫方法之間 開的事務 是否會 傳播其他被呼叫的方法上
1、propagation.require 必須開啟事務(適用增刪改)
1、1如果當方法被其他呼叫 ,但是其他方法 沒有開啟事務 當前方法自己開啟事務
1、2如果當方法被其他呼叫 ,但是其他方法 其他方法開啟事務 當前方法使用 被呼叫方法事務 自己無需開啟
2、propagation.supports 不一定開啟事務(適用查詢)
2、1被呼叫的方法 開啟了事務 就使用原有事務
2、2被呼叫的方法 沒有事務 不使用事務
作用: 解決是 多個sql連線之間 事務允許髒資料的程度
先簡單說一下髒資料的程度吧
1、髒讀
:乙個事務讀取到另乙個事務未提交的資料
2、不可重複讀
:在乙個事務中,反覆讀取同一條資料,兩次結果不一致
3、幻影讀
:3、1、在同乙個事務中,按同一條件查詢,有多條結果
,按同一條件查詢,兩次結果數量不一致
事務隔離級別
1、read_uncommitted、讀未提交
:乙個事務讀取到另乙個事務未提交的資料,
無隔離,容易髒資料
2、read_committed 讀已提交
:乙個事務讀取到另乙個事務提交的資料,解決髒讀問題,
3、repeatable_read 、
:可以解決髒讀和不可重複讀,不能解決幻影讀
4、serializable、
:可以解決髒讀和不可重複讀,幻影讀
spring事務隔離級別
在spring中定義了5中不同的事務隔離級別 1.isolation default 一般情況下使用這種配置既可 這是乙個platfromtransactionmanager預設的隔離級別,使用資料庫預設的事務隔離級別。2.isolation read uncommitted 4 p l.i f k...
Spring 事務隔離級別
資料庫事務的隔離級別有4種,由低到高分為為read uncomitted,read comitted,repeatable read serializable,而且,在事務的併發操作中可能會出現髒讀,不可重複度,虛讀 幻讀 髒讀 read uncomitted 什麼都防不住 乙個事務讀到另外乙個事務...
Spring事務隔離級別
事務操作可能出現的問題 更新丟失 lost update 當系統允許兩個事務同時更新同一資料時,發生更新丟失。髒讀 dirty read 當乙個事務讀取另乙個事務尚未提交的修改時,產生髒讀。非重複讀 nonrepeatable read 第一次讀 得到乙個結果 再讀,換了乙個結果 幻像 phanto...