The only documentation is the code itself
posted on 2005-12-19 16:02 DenisLing 閱讀(3220) 評(píng)論(5) 編輯 收藏
答案是不會(huì)的,二級(jí)事務(wù)的rollback只針對(duì)自己。 ------------------------------------------------ 但你下文中也說了:二級(jí)事務(wù)的rollback最終會(huì)使整個(gè)事務(wù)rollback啊. 該怎么理解你上面這句話? 回復(fù) 更多評(píng)論
如你的例子, 在兩個(gè)二級(jí)事務(wù)中, 若取錢的成功了,而在存入的時(shí)候rollback了,這時(shí)整個(gè)transaction會(huì)被rollback,如此,在取錢這個(gè)二級(jí)的會(huì)被rollback嗎? 回答若'Y', 這和放在一個(gè)事務(wù)中有啥區(qū)別呢? 回復(fù) 更多評(píng)論
上面的朋友可能沒有理解我的意思!我的例子可能有點(diǎn)問題! 其實(shí)這有一個(gè)經(jīng)典的旅行定票的問題! 比如我要到臺(tái)灣旅游,我可能要如下去做 1,買到上海的汽車票, 2,在上海買去香港的飛機(jī)票, 3,在香港買去臺(tái)灣的飛機(jī)票, 4,買到目的旅游地的汽車票。 ok!現(xiàn)在就討論上面的問題,如果把整個(gè)過程看成是一個(gè)完成的事務(wù),在以前的六種事務(wù)模型里面比如在第4步的時(shí)候沒有能夠買到到目的旅游地的汽車票,整個(gè)事務(wù)會(huì)回滾。 但是我們可能在第4步的時(shí)候還可以選擇做地鐵或打的等等。這也就是嵌套事務(wù)類型和上面的不同地方,可以把1,2,3,4分別看成是一個(gè)子事務(wù),比如1的時(shí)候我沒有買到汽車票,可能我這個(gè)買汽車票的事務(wù)會(huì)回滾,但是這并步影響外面的事務(wù),可們可以選擇做火車等等其它途徑。如果1最后沒有能夠提交事務(wù),那么總的事務(wù)會(huì)回滾,(但是在1事務(wù)回滾的時(shí)候并不會(huì)導(dǎo)致外層事務(wù)回滾)。其他幾步都是一樣的道理。 不知道這個(gè)例子是否明白點(diǎn)!有問題我們?cè)儆懻摚?nbsp; 回復(fù) 更多評(píng)論
上面的說法完全看不懂 就本人的理解在SRING默認(rèn)的回滾規(guī)則下 在2級(jí)事務(wù)中如果回滾了數(shù)據(jù)但是沒有拋出異常 1級(jí)事務(wù)還是回繼續(xù)執(zhí)行后面的2級(jí)事務(wù) 如果2級(jí)事務(wù)在回滾過程中拋出了異常 那么1級(jí)事務(wù)也馬上回滾 但是如果前面的2級(jí)事務(wù)如果已經(jīng)提交了 那么就算后面的2級(jí)事務(wù)回滾并拋出異常也只會(huì)導(dǎo)致1級(jí)事務(wù)回滾 前面已經(jīng)提交的2級(jí)事務(wù)不能回滾了 (因?yàn)榫臀抑赖某绦蚴遣荒芑貪L已經(jīng)提交的 只能通過數(shù)據(jù)庫系統(tǒng)日志恢復(fù)了) 回復(fù) 更多評(píng)論
@javafox你兩說的好像是一樣的 回復(fù) 更多評(píng)論
Powered by: BlogJava Copyright © DenisLing