mybatic與spring結(jié)合的事務(wù)管理

mybatic與spring結(jié)合的事務(wù)管理

原文地址:http://czj4451.iteye.com/blog/2037759

mybatis與spring結(jié)合后,事務(wù)管理更加方便,這里介紹使用transactionnal的方式,有錯(cuò)的的地方,希望大家指出。

1. 和Spring集成后,使用Spring的事務(wù)管理:

a.?@Transactional方式:

在類路徑下創(chuàng)建beans-da-tx.xml文件,在applicationContext-resources.xml的基礎(chǔ)上加入事務(wù)配置:

class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

服務(wù)類:

@Service("userService")

publicclass?UserService?{

@Autowired

IUserMapper?mapper;

publicint?batchUpdateUsersWhenException()?{//?非事務(wù)性

User?user?=new?User(9,"Before?exception");

int?affectedCount?=?mapper.updateUser(user);//?執(zhí)行成功

User?user2?=new?User(10,"After?exception");

int?i?=1?/0;//?拋出運(yùn)行時(shí)異常

int?affectedCount2?=?mapper.updateUser(user2);//?未執(zhí)行

if?(affectedCount?==1?&&?affectedCount2?==1)?{

return1;

}

return0;

}

@Transactional

publicint?txUpdateUsersWhenException()?{//?事務(wù)性

User?user?=new?User(9,"Before?exception");

int?affectedCount?=?mapper.updateUser(user);//?因后面的異常而回滾

User?user2?=new?User(10,"After?exception");

int?i?=1?/0;//?拋出運(yùn)行時(shí)異常,事務(wù)回滾

int?affectedCount2?=?mapper.updateUser(user2);//?未執(zhí)行

if?(affectedCount?==1?&&?affectedCount2?==1)?{

return1;

}

return0;

}

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,253評(píng)論 6 342
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,626評(píng)論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,506評(píng)論 19 139
  • application的配置屬性。 這些屬性是否生效取決于對(duì)應(yīng)的組件是否聲明為Spring應(yīng)用程序上下文里的Bea...
    新簽名閱讀 5,530評(píng)論 1 27
  • 這些屬性是否生效取決于對(duì)應(yīng)的組件是否聲明為 Spring 應(yīng)用程序上下文里的 Bean(基本是自動(dòng)配置的),為一個(gè)...
    發(fā)光的魚閱讀 1,482評(píng)論 0 14

友情鏈接更多精彩內(nèi)容