天天看點

Spring中propagation的7種事務配置

一、在聲明式的事務進行中,要配置一個切面,其中就用到了propagation,表示打算對這些方法怎麼使用事務,是用還是不用,其中propagation有七種配置,REQUIRED、SUPPORTS、MANDATORY、REQUIRES_NEW、NOT_SUPPORTED、NEVER、NESTED。預設是REQUIRED。

二、Spring中七種Propagation類的事務屬性詳解: 

 REQUIRED:支援目前事務,如果目前沒有事務,就建立一個事務。這是最常見的選擇。 

 SUPPORTS:支援目前事務,如果目前沒有事務,就以非事務方式執行。 

 MANDATORY:支援目前事務,如果目前沒有事務,就抛出異常。 

 REQUIRES_NEW:建立事務,如果目前存在事務,把目前事務挂起。 

 NOT_SUPPORTED:以非事務方式執行操作,如果目前存在事務,就把目前事務挂起。 

 NEVER:以非事務方式執行,如果目前存在事務,則抛出異常。 

 NESTED:支援目前事務,如果目前事務存在,則執行一個嵌套事務,如果目前沒有事務,就建立一個事務。 

三、注意. 

這個配置将影響資料存儲,必須根據情況選擇。

原文連結

繼續閱讀