1. 程式人生 > >事務的七個傳播行為

事務的七個傳播行為

PROPAGATION_REQUIRED

如果存在一個事務,則支援當前事務。如果沒有事務則開啟一個新的事務。
PROPAGATION_SUPPORTS

如果存在一個事務,支援當前事務。如果沒有事務,則非事務的執行。但是對於事務同步的事務管理器,PROPAGATION_SUPPORTS與不使用事務有少許不同。
PROPAGATION_MANDATORY

如果已經存在一個事務,支援當前事務。如果沒有一個活動的事務,則丟擲異常。
PROPAGATION_REQUIRES_NEW

總是開啟一個新的事務。如果一個事務已經存在,則將這個存在的事務掛起。
PROPAGATION_NOT_SUPPORTED

總是非事務地執行,並掛起任何存在的事務
PROPAGATION_NEVER

總是非事務地執行,如果存在一個活動事務,則丟擲異常

PROPAGATION_NESTED

如果一個活動的事務存在,則執行在一個巢狀的事務中. 如果沒有活動事務, 則按TransactionDefinition.PROPAGATION_REQUIRED 屬性執行