-
spring事務(wù)管理查看全部
-
Spring測試: @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:xxx.xml") @Resource(name="") Spring事務(wù):邏輯上的一組操作,要么全部成功,要么全部失敗 Spring事務(wù)管理的一組API Spring的編程式事務(wù)管理(事務(wù)管理模板) 1.在實際運用中很少使用 2.通過TrasactionTemplate手動管理事務(wù) 1.在AccountService中使用TransactionTemplate 2.TransactionTemplate依賴DataSourceTransactionManager 3.DataSourceTransactionManager依賴DataSource構(gòu)造 (事務(wù)管理器有了連接池才能獲得鏈接進行事務(wù)管理) Spring的聲明式事務(wù)管理(重點) 1.開發(fā)中推薦使用(代碼入侵性最小) 2.Spring的聲明式事務(wù)是(通過AOP實現(xiàn)的) 第一種:基于代理TransactionProxyFactoryBean; 注入:目標(biāo),事務(wù)管理器,事務(wù)屬性: 1.PROPAGATION :事務(wù)的傳播行為 2.ISOLATION :事務(wù)的隔離級別 3.readOnly :只讀,(不可以進行修改,插入,刪除) 4.-Exception :發(fā)生那些異常回滾事務(wù) 5.+Exception :發(fā)生那些異常事務(wù)不回滾 第二種:基于AspectJ的XML方式(aspectJ的話,就是分的更加的詳細,切入點(類),切入面(方法)) 1.配置事務(wù)的通知<tx> 2.配置切面,切點<aop> 第三種:基于注解的方式 1.開啟事務(wù)<tx:annotation-driven transaction-Manager="" /> 2.service類@Transactional(name=value)查看全部
-
//相關(guān)代碼(聲明式 III——基于注解的方式)——(上): @AccountServiceImpl.java package cn.muke.spring.demo4; /** * 轉(zhuǎn)賬案例的業(yè)務(wù)層實現(xiàn)類 */ /** * propagation :事務(wù)的傳播行為。 * isolation :事務(wù)的隔離級別,比如,Isolation.DEFAULT:數(shù)據(jù)庫默認級別。 * readonly :只讀(不可進行修改、插入、刪除操作,否則報錯)。 * rollback-for :發(fā)生哪些異常回滾事務(wù)。 * no-rollback-for :發(fā)生哪些異常事務(wù)不回滾,繼續(xù)提交。 * timeout :過期信息。 */ @Transactional(isolation=Isolation.DEFAULT,propagation=Propagation.REQUIRED) public class AccountServiceImpl implements AccountService { // 注入轉(zhuǎn)賬的DAO的類 private AccountDao accountDao; public void setAccountDao(AccountDao accountDao) { this.accountDao = accountDao; } /** * @param out :轉(zhuǎn)出賬號 * @param in :轉(zhuǎn)入賬號 * @param money :轉(zhuǎn)賬金額 */ public void transfer(String out, String in, Double money) { accountDao.outMoney(out, money); int i=1/0;//這樣一來,上面可以成功執(zhí)行,下面就不會得到執(zhí)行 accountDao.inMoney(in, money); } }查看全部
-
聲明事務(wù)管理方式一:查看全部
-
事務(wù)傳播行為查看全部
-
事務(wù)隔離級別查看全部
-
事物傳播行為查看全部
-
事物隔離級別(四種)查看全部
-
在doInTransacationWithoutResult()中實現(xiàn)事務(wù)的操作。 注意:new TransactionCallbackWithoutResult()為匿名內(nèi)部類,調(diào)用外部變量需要將外部變量定義為final。查看全部
-
業(yè)務(wù)層accountService注入事務(wù)管理模板(xml中)查看全部
-
業(yè)務(wù)層實現(xiàn)類注入事務(wù)管理模板查看全部
-
編程式的事務(wù)控制查看全部
-
轉(zhuǎn)賬案例環(huán)境準(zhǔn)備--applicationContext.xml配置查看全部
-
轉(zhuǎn)賬案例環(huán)境準(zhǔn)備--業(yè)務(wù)層注入dao查看全部
-
轉(zhuǎn)賬案例環(huán)境準(zhǔn)備--DAO代碼查看全部
舉報
0/150
提交
取消