這篇文章將為大家詳細(xì)講解有關(guān)mybatis如何開(kāi)啟spring事務(wù),小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
1、事務(wù)
Spring事務(wù)的本質(zhì)其實(shí)就是數(shù)據(jù)庫(kù)對(duì)事務(wù)的支持,沒(méi)有數(shù)據(jù)庫(kù)的事務(wù)支持,spring是無(wú)法提供事務(wù)功能的。最終都是調(diào)用數(shù)據(jù)庫(kù)連接來(lái)完成事務(wù)的開(kāi)啟、提交和回滾。
2、模塊
那么在對(duì)于spring事務(wù)而言,幾個(gè)不可或缺的模塊就是數(shù)據(jù)源、事務(wù)管理器以及事務(wù)編程
3、xml配置
4、事務(wù)編程
@Test public void testDelete() throws Exception { ApplicationContext context = new ClassPathXmlApplicationContext("mysqltransaction.xml"); DataSourceTransactionManager springTransactionManager = (DataSourceTransactionManager) context.getBean("springTransactionManager"); DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); //開(kāi)啟事務(wù) TransactionStatus status = springTransactionManager.getTransaction(def); final StudentDAO dao = (StudentDAO)context.getBean("studentDAO"); try { dao.delete(2L); } catch (Exception ex) { springTransactionManager.rollback(status); //事務(wù)回滾 throw ex; } springTransactionManager.commit(status); //事務(wù)提交 }
關(guān)于“mybatis如何開(kāi)啟spring事務(wù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。