1 回答

TA貢獻7條經(jīng)驗 獲得超5個贊
@Transactionalpublic?class?TestServiceBean?implements?TestService?{??? ????private?TestDao?dao;??? ????public?void?setDao(TestDao?dao)?{????????this.dao?=?dao; ????}??? ????@Transactional(propagation?=?Propagation.NOT_SUPPORTED)????public?List<Object>?getAll()?{????????return?null; ????}??? }
@Transactional(propagation=Propagation.REQUIRED)?
如果有事務(wù), 那么加入事務(wù), 沒有的話新建一個(默認情況下)
@Transactional(propagation=Propagation.NOT_SUPPORTED)?
容器不為這個方法開啟事務(wù)
@Transactional(propagation=Propagation.REQUIRES_NEW)?
不管是否存在事務(wù),都創(chuàng)建一個新的事務(wù),原來的掛起,新的執(zhí)行完畢,繼續(xù)執(zhí)行老的事務(wù)
@Transactional(propagation=Propagation.MANDATORY)?
必須在一個已有的事務(wù)中執(zhí)行,否則拋出異常
@Transactional(propagation=Propagation.NEVER)?
必須在一個沒有的事務(wù)中執(zhí)行,否則拋出異常(與Propagation.MANDATORY相反)
@Transactional(propagation=Propagation.SUPPORTS)?
如果其他bean調(diào)用這個方法,在其他bean中聲明事務(wù),那就用事務(wù).如果其他bean沒有聲明事務(wù),那就不用事務(wù).
添加回答
舉報