亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Springboot通過(guò)aop實(shí)現(xiàn)事務(wù)控制過(guò)程解析

 更新時(shí)間:2020年03月09日 11:43:02   作者:程序曉猿  
這篇文章主要介紹了Springboot通過(guò)aop實(shí)現(xiàn)事務(wù)控制過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

spring的事務(wù)控制本質(zhì)上是通過(guò)aop實(shí)現(xiàn)的。

在springboot中使用時(shí),可以通過(guò)注解@Transactional進(jìn)行類或者方法級(jí)別的事務(wù)控制,也可以自己通過(guò)spring提供的事務(wù)管理器手動(dòng)控制事務(wù)

一、 @Transactional注解進(jìn)行進(jìn)行類或者方法級(jí)別的事務(wù)控制

不需要進(jìn)行特別的設(shè)置,按照正常的配置整合spring和mybatis后,在需要進(jìn)行事務(wù)控制的類上或者方法上加上

@Transactional注解,即可對(duì)其進(jìn)行事務(wù)控制。

二、手動(dòng)控制事務(wù)

當(dāng)需要在一個(gè)方法的內(nèi)部進(jìn)行事務(wù)控制時(shí),就需要利用spring提供的事務(wù)管理器來(lái)手動(dòng)控制。在方法所在的類中注入事務(wù)管理器,然后在方法中需要的位置利用事務(wù)管理器進(jìn)行控制:開(kāi)啟事務(wù),提交事務(wù),回滾事務(wù)

  @Autowired
  PlatformTransactionManager platformTransactionManager;
  @Autowired
  TransactionDefinition transactionDefinition;
public void testTransaction() {

    //開(kāi)啟事務(wù)
    TransactionStatus transactionStatus = platformTransactionManager.getTransaction(transactionDefinition);
    try {
      CategoryInfo categoryInfo1=new CategoryInfo();
      categoryInfo1.setName("分類1");
      categoryDataDao.add(categoryInfo1);
      //模擬發(fā)生異常,事務(wù)回滾后應(yīng)該數(shù)據(jù)庫(kù)兩條記錄都沒(méi)有
      int i=1/0;
      CategoryInfo categoryInfo2=new CategoryInfo();
      categoryInfo2.setName("分類2");
      categoryDataDao.add(categoryInfo2);
      //提交事務(wù)
      platformTransactionManager.commit(transactionStatus);
    } catch (Exception e) {
      logger.error("發(fā)生異常事務(wù)回滾");
      platformTransactionManager.rollback(transactionStatus);
    }
  }

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java中使用session監(jiān)聽(tīng)實(shí)現(xiàn)同帳號(hào)登錄限制、登錄人數(shù)限制

    java中使用session監(jiān)聽(tīng)實(shí)現(xiàn)同帳號(hào)登錄限制、登錄人數(shù)限制

    本文主要介紹了java中使用session監(jiān)聽(tīng)實(shí)現(xiàn)同帳號(hào)登錄限制、登錄人數(shù)限制,通過(guò)session來(lái)監(jiān)聽(tīng)在線人數(shù)和登陸限制,有需要的童鞋可以了解一下。
    2016-10-10
  • java小知識(shí)之查詢數(shù)據(jù)庫(kù)數(shù)據(jù)的元信息

    java小知識(shí)之查詢數(shù)據(jù)庫(kù)數(shù)據(jù)的元信息

    這篇文章主要給大家介紹了關(guān)于java小知識(shí)之查詢數(shù)據(jù)庫(kù)數(shù)據(jù)的元信息,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-10-10
  • java虛擬機(jī)學(xué)習(xí)高級(jí)篇

    java虛擬機(jī)學(xué)習(xí)高級(jí)篇

    在本篇文章里小編給大家整理了關(guān)于java虛擬機(jī)學(xué)習(xí)高級(jí)篇的相關(guān)內(nèi)容,有興趣的朋友們跟著學(xué)習(xí)參考下。
    2019-06-06
  • 徹底搞懂Java多線程(四)

    徹底搞懂Java多線程(四)

    這篇文章主要給大家介紹了關(guān)于Java面試題之多線程和高并發(fā)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • Java數(shù)據(jù)結(jié)構(gòu)之ArrayList從順序表到實(shí)現(xiàn)

    Java數(shù)據(jù)結(jié)構(gòu)之ArrayList從順序表到實(shí)現(xiàn)

    Java中的ArrayList是一種基于數(shù)組實(shí)現(xiàn)的數(shù)據(jù)結(jié)構(gòu),支持動(dòng)態(tài)擴(kuò)容和隨機(jī)訪問(wèn)元素,可用于實(shí)現(xiàn)順序表等數(shù)據(jù)結(jié)構(gòu)。ArrayList在內(nèi)存中連續(xù)存儲(chǔ)元素,支持快速的隨機(jī)訪問(wèn)和遍歷。通過(guò)學(xué)習(xí)ArrayList的實(shí)現(xiàn)原理和使用方法,可以更好地掌握J(rèn)ava中的數(shù)據(jù)結(jié)構(gòu)和算法
    2023-04-04
  • 如何查看Linux上正在運(yùn)行的所有Java程序列表

    如何查看Linux上正在運(yùn)行的所有Java程序列表

    在linux操作時(shí),經(jīng)常要查看運(yùn)行的項(xiàng)目的進(jìn)程和端口,下面這篇文章主要給大家介紹了關(guān)于如何查看Linux上正在運(yùn)行的所有Java程序列表的相關(guān)資料,需要的朋友可以參考下
    2023-10-10
  • SpringBoot搭建全局異常攔截

    SpringBoot搭建全局異常攔截

    這篇文章主要介紹了SpringBoot搭建全局異常攔截,本文通過(guò)詳細(xì)的介紹與代碼的展示,詳細(xì)的說(shuō)明了如何搭建該項(xiàng)目,包括創(chuàng)建,啟動(dòng)和測(cè)試步驟,需要的朋友可以參考下
    2021-06-06
  • 使用Java的方式模擬Flutter的Widget實(shí)現(xiàn)多層括號(hào)嵌套

    使用Java的方式模擬Flutter的Widget實(shí)現(xiàn)多層括號(hào)嵌套

    這篇文章主要介紹了使用Java的方式模擬Flutter的Widget的實(shí)現(xiàn)多層括號(hào)嵌套問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Json字符串與Object、List、Map的互轉(zhuǎn)工具類

    Json字符串與Object、List、Map的互轉(zhuǎn)工具類

    今天小編就為大家分享一篇關(guān)于Json字符串與Object、List、Map的互轉(zhuǎn)工具類,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • Servlet文件的上傳與下載詳解

    Servlet文件的上傳與下載詳解

    很多朋友不清楚在Servlet中怎么上傳下載文件,談到這個(gè)問(wèn)題,首先需要我們掌握開(kāi)發(fā)servlet的步驟,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-06-06

最新評(píng)論