真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Spring事務不同傳播屬性差異總結-創(chuàng)新互聯(lián)

spring事務的傳播屬性列表如下:

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都網(wǎng)站制作、成都網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的館陶網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!

REQUIRED:support a current transaction,creat a new one if none exists;tihs is the default setting of a tansaction annotation

required的傳播屬性是事務的默認屬性,如果父方法有事務,那么required就加入父方法的事務,如果父方法,沒有事務,新建一個自己的事務。

SUPPORTS: support a current transaction, execute non-transacitonally if none exists.

supports的傳播屬性中有一句和required一模一樣的一句話,support a current transaction ,這句話的意思就是父類方法有事務,那么就加入父類方法的事務,這個是和required是一樣的。唯一的區(qū)別就是,在父方法沒有事務的情況下,添加了supports注解的方法也不使用事務,所以這個傳播特性就是和父方法保持一致。

MANDATORY:supports a current transaction,throw an exception if none exists

mandatory的中文解釋是 強制的,法定的,第一句和上面兩個屬性一樣,所以父方法有事務,加入。但是父方法沒有事務,就拋出異常。

REQUIRES_NEW:creat a new transaction ,and suspend the current transaction?if one exists.

requires_new:這屬性和上面三個是有較大差異的,因為無論父方法有沒有事務,子方法都會新開一個事務,如果父方法有事務,會將父方法的事務給掛起來。這樣這兩個事務的成功和失敗是沒有強相關性的,子事務失敗了,如果父事務進行了異常捕獲,那么父方法也是可以單獨成功的,父方法在子方法提交成功后在失敗,此時的子方法也是成功提交了。

NOT_SUPPORTED:execute non-transactionlly ,suspend the current transaction if one exists

not_supported和requires_new有一個共同的相似點,就是父方法如果有了事務,要將事務給掛起,不過區(qū)別就是requires_new新開一個事務,而not_supported就只沒有事務的模式下進行執(zhí)行。

NEVER:execute non-transaction,throws an exception if a transaction exists.

never要和mandatory對比看待,一個是沒有事務拋出異常,而這個是父方法有事務,就拋出異常。

NESTED:execute within a nested transaction if a current transaction exists.

nested:中文意思是嵌套,這個屬性是要和REQUIRES_NEW對比看待,REQUIRES_NEW中兩個事務的成功和失敗沒有強關聯(lián)性,而NESTED的話,父事務失敗了,子事務也會跟著回滾,但是子事務失敗了,如果父方法加上try-catch的話,就只有子方法的數(shù)據(jù)會回滾。

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧


當前文章:Spring事務不同傳播屬性差異總結-創(chuàng)新互聯(lián)
URL地址:http://weahome.cn/article/ddhspi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部