由於以前都是對整個selevlet或者jsp進行事務,所以昨天自然的也以為可在controller類中進行事務:
在handlerequest方法中使用了
[code]
jzlogic.updatea(a);
jzlogic.inserb(b);
[/code]
jzlogic已經設定事務規則,對insert、update的方法進行事務,然而測試過後,在handlerequest方法中這樣並不能達到事務能力,然後通過測試
[code]
jzlogic.updatea(a,b);
//updatea實現
jzlogic.updatea(a a,b b)
[/code]
這樣就達到了事務效果,
可能是以前自己**並不規範的問題,在servlet中進行邏輯組織,這樣就造成了這個理解的偏差,當然這也是開始並沒理解spring配置的事務是對乙個方法進行,而不是對例項進行事務。
雖然上面方式是實現了,可是不知道這樣的設計是否規範,updatea的時候都會insertb,但是b的有些引數會從controller中得到,還有待斟酌,不過體會到一點就是,邏輯不應該放到controller中了
Spring 事務理解
1 spring事物是什麼?事務通常由高階資料庫操縱語言或程式語言編寫的,說白了事務就是執行一段或者多段sql的方法。spring本身是沒有事務一說的,資料庫對事務的支援才是spring事務的本質。2 為什麼需要spring事物?jdbc來運算元據庫,必須通過以下步驟才能使用到資料庫的事務,步驟如下...
spring 事務的理解
1 spring事務的本質其實就是資料庫對事務的支援 2 spring事務的傳播屬性 propagation required 支援當前事務 如果當前沒有事務,就新建乙個事務。propagation requires new新建事務,如果當前存在事務,把當前事務掛起。propagation supp...
理解Spring事務管理
理解事務之前,先講乙個你日常生活中最常幹的事 取錢。比如你去atm機取1000塊錢,大體有兩個步驟 首先輸入密碼金額,銀行卡扣掉1000元錢 然後atm出1000元錢。這兩個步驟必須是要麼都執行要麼都不執行。如果銀行卡扣除了1000塊但是atm出錢失敗的話,你將會損失1000元 如果銀行卡扣錢失敗但...