欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java Spring事務(wù)使用及驗(yàn)證過程詳解

 更新時(shí)間:2020年12月01日 14:27:44   作者:手撕高達(dá)的村長  
這篇文章主要介紹了Java Spring事務(wù)使用及驗(yàn)證過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

事務(wù),只要是為了保證數(shù)據(jù)的原子性。避免出現(xiàn)臟數(shù)據(jù)。

下面來講解下spring是如何使用事務(wù)的。

1.配置事務(wù)。這里采用的是注解的模式

<!-- 配置事務(wù)管理器 ,如果你暫時(shí)未使用到事務(wù)可以不配置,次以下內(nèi)容均可以在不適用事務(wù)的情況下刪除 -->
<bean id="transactionManager"
  class="org.springframework.jdbc.datasource.DataSourceTransactionManager" >
  <property name="dataSource" ref="dataSource"/>
</bean>
 
 <!-- 開啟事務(wù)行為 -->
<tx:annotation-driven transaction-manager="transactionManager" />

2.配置就基本搞定了,然后就是在service或者service的方法上使用@Transactional定義是否需要是否管理就行了。

@Transactional
  @Override
  public String userInfoData(String id) {
    // TODO Auto-generated method stub
    System.out.print("調(diào)用 dao層方法");
    UserInfo arr = loginDao.getUser(1);
    System.out.println("arr id = "+ arr.getId());
    System.out.println("arr Username = "+ arr.getUsername());
     
    MoneyInfo money = moneyDao.getmoney(1);
     
    moneyDao.InsertMony(500);
     
    loginDao.InsertUser(3, "Tigger");
     
     
    System.out.println("money = "+ money.getMoney());
    System.out.println("money += "+ money.getMoney());
    Logger log = Logger.getLogger(UserServiceImpl.class);
     
    log.info("執(zhí)行了m01...");
    //1.mybatis 的自己調(diào)用方法
/*   try {
      mybatisTest();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }*/
    //2.spring + mybatis整合后的調(diào)用
     
    return null;
  }

 以上就基本可以搞定了,驗(yàn)證配置是否成功的話,可以在不加注解的時(shí)候插入兩條數(shù)據(jù),后面一條數(shù)據(jù)是會(huì)報(bào)錯(cuò)的。

如果不使用事務(wù)的話,會(huì)發(fā)現(xiàn)第一條插入成功到DB里去了,然后在插入第二條的時(shí)候,程序報(bào)錯(cuò)。

如果這里使用@Transactional 開啟事務(wù),那么會(huì)發(fā)現(xiàn)兩條數(shù)據(jù)都插入不了,直接報(bào)錯(cuò)了,這里事務(wù)就成功的啟用了起來。

@Transactional

(1)這里說明一下,有的把這個(gè)注解放在類名稱上面了,這樣你配置的這個(gè)@Transactional 對(duì)這個(gè)類中的所有public方法都起作用.

(2)@Transactional 方法方法名上,只對(duì)這個(gè)方法有作用,同樣必須是public的方法

(3) 數(shù)據(jù)庫引擎要支持事務(wù),如果是MySQL,注意表要使用支持事務(wù)的引擎,比如innodb,如果是myisam,事務(wù)是不起作用的

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

相關(guān)文章

  • java 枚舉類中的valueOf用法說明

    java 枚舉類中的valueOf用法說明

    這篇文章主要介紹了java 枚舉類中的valueOf用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java Web應(yīng)用程序?qū)崿F(xiàn)基礎(chǔ)的文件下載功能的實(shí)例講解

    Java Web應(yīng)用程序?qū)崿F(xiàn)基礎(chǔ)的文件下載功能的實(shí)例講解

    這里我們演示了Servelet驅(qū)動(dòng)Tomcat來進(jìn)行HTTP下載的方法,接下來就詳細(xì)來看Java Web應(yīng)用程序?qū)崿F(xiàn)基礎(chǔ)的文件下載功能的實(shí)例講解
    2016-05-05
  • jvm crash的崩潰日志詳細(xì)分析及注意點(diǎn)

    jvm crash的崩潰日志詳細(xì)分析及注意點(diǎn)

    本篇文章主要介紹了jvm crash的崩潰日志詳細(xì)分析及注意點(diǎn)。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-04-04
  • springboot 配置文件配置項(xiàng)前綴為0的數(shù)字特殊處理方式

    springboot 配置文件配置項(xiàng)前綴為0的數(shù)字特殊處理方式

    這篇文章主要介紹了springboot 配置文件配置項(xiàng)前綴為0的數(shù)字特殊處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • BeanFactory與ApplicationContext的區(qū)別示例解析

    BeanFactory與ApplicationContext的區(qū)別示例解析

    這篇文章主要為大家介紹了BeanFactory與ApplicationContext的區(qū)別示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • java Thumbnails 圖片處理的使用

    java Thumbnails 圖片處理的使用

    這篇文章主要介紹了java Thumbnails 圖片處理的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Caused by: java.io.IOException: DerInputStream.getLength(): lengthTag=111

    Caused by: java.io.IOException: DerInputStrea

    這篇文章主要介紹了Caused by: java.io.IOException: DerInputStream.getLength(): lengthTag=111, too big,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • Java反射機(jī)制的學(xué)習(xí)總結(jié)

    Java反射機(jī)制的學(xué)習(xí)總結(jié)

    總的來說,java反射機(jī)制是一個(gè)很好用的東西,用它可以解決很多死的東西,因?yàn)榉瓷錂C(jī)制的靈活行很大,有了他,我們就不要花太多的時(shí)間來寫操做數(shù)據(jù)庫的代碼了,而是方法更多的時(shí)間在項(xiàng)目的邏輯功能上,這個(gè)可以很大的減少開發(fā)時(shí)間,而且代碼的可讀性好
    2013-09-09
  • SpringBoot中Aware接口使用及原理解析

    SpringBoot中Aware接口使用及原理解析

    在Spring中存在一個(gè)Aware接口,實(shí)現(xiàn)該接口可以讓我們的Bean獲取到Spring容器中特定的資源,但該接口只是個(gè)標(biāo)記接口,不存在任何方法,本文將給大家詳細(xì)介紹一下SpringBoot中Aware接口使用及原理,需要的朋友可以參考下
    2023-08-08
  • 我賭你不清楚Spring中關(guān)于Null的這些事

    我賭你不清楚Spring中關(guān)于Null的這些事

    這篇文章主要介紹了我賭你不清楚Spring中關(guān)于Null的這些事,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評(píng)論