国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

spring和mybatis的整合

vspiders / 2456人閱讀

摘要:第一是手動在的配置文件中使用部分來指定類路徑。第二是使用工廠的屬性。注解和樣式的配置都是支持的。在事務處理期間一個多帶帶的對象將會被創建和使用。創建的代理控制開放和關閉翻譯任意的異常到的異常中。每個映射器將會在指定的包路徑中遞歸地被搜索到。

mybatis-spring

若要整合spring和mybatis就需要一個插件即mybatis-spring-x.x.x.jar。具體的安裝如下所示:

 
   org.mybatis
   mybatis-spring
   x.x.x
 

要和Spring一起使用 MyBatis,還需要在 Spring 應用上下文中定義至少兩樣東西:一個 SqlSessionFactory 和至少一個數據映射器類。

SqlSessionFactory
在文件中配置sqlsessionfactory

   

屬性dataSource: SqlSessionFactory 有一個多帶帶的必須屬性,就是 JDBC 的 DataSource。這可以是任意 的 DataSource,其配置應該和其它 Spring 數據庫連接是一樣的。

configLocation:它是用來指定MyBatis的XML 配置文件路徑的。 如果基本的 MyBatis 配置需要改變, 那么這就是一個需要它的地方。 通常這會是的部分。要注意這個配置文件不需要是一個完整的 MyBatis 配置。確切地說,任意環境,數據源 和 MyBatis 的事務管理器都會被忽略。SqlSessionFactoryBean 會創建它自己的,使用這些 值定制 MyBatis 的 Environment 時是需要的。

mapperLocations:如果 MyBatis 映射器 XML 文件在和映射器類相同的路徑下不存在,那么另外一個需要配置文件的原因就是它了。使用這個配置,有兩種選擇。第一是手動在 MyBatis的XML配 置文件中使用部分來指定類路徑。第二是使用工廠bean的mapperLocations屬性。

mapperLocations 屬性使用一個資源位置的 list。 這個屬性可以用來指定 MyBatis 的 XML 映射器文件的位置。 它的值可以包含 Ant 樣式來加載一個目錄中所有文件, 或者從基路徑下 遞歸搜索所有路徑。

事務

一個使用 MyBatis-Spring的主要原因是它允許MyBatis參與到 Spring 的事務管理中。而不是給 MyBatis創建一個新的特定的事務管理器,MyBatis-Spring 利用了存在于 Spring 中的 DataSourceTransactionManager。

一旦 Spring 的 PlatformTransactionManager 配置好了,就可以在 Spring 中以你通常的做法來配置事務。@Transactional 注解和 AOP樣式的配置都是支持的。在事務處理期間,一個多帶帶的 SqlSession 對象將會被創建 和使用。當事務完成時,這個 session 會以合適的方式提交或回滾。

映射器類配置

為了代替手工使用 SqlSessionDaoSupport 或 SqlSessionTemplate 編寫數據訪問對象 (DAO)的代碼,MyBatis-Spring 提供了一個動態代理的實現:MapperFactoryBean。這個類 可以讓你直接注入數據映射器接口到你的 service 層 bean 中。當使用映射器時,你僅僅如調 用你的 DAO 一樣調用它們就可以了,但是你不需要編寫任何 DAO 實現的代碼,因為 MyBatis-Spring 將會為你創建代理。使用注入的映射器代碼,在 MyBatis,Spring 或 MyBatis-Spring 上面不會有直接的依賴。

MapperFactoryBean 創建的代理控制開放和關閉 session,翻譯任意的異常到 Spring 的DataAccessException 異常中。此外,如果需要或參與到一個已經存在活動事務中,代理將會開啟一個新的Spring事務。

數據映射器接口可以按照如下做法加入到 Spring 中:


  
  

MapperFactoryBean 創建的代理類實現了 UserMapper 接口,并且注入到應用程序中。 因為代理創建在運行時環境中,那么指定的映射器必須是一個接口,而不是一個具體的實現類。

如果UserMapper 有一個對應的MyBatis的XML映射器文件, 如果 XML 文件在類路徑的位置和映射器類相同時,它會被 MapperFactoryBean自動解析。沒有必要在 MyBatis 配置文 件 中 去 指 定 映 射 器 , 除 非 映 射 器 的 XML 文 件 在 不 同 的 類 路 徑 下 。

沒有必要在 Spring 的 XML 配置文件中注冊所有的映射器。相反,你可以使用一個MapperScannerConfigurer , 它 將 會 查 找 類 路 徑 下 的 映 射 器 并 自 動 將 它 們 創 建 成MapperFactoryBean。

要創建 MapperScannerConfigurer,可以在 Spring 的配置中添加如下代碼:


  

basePackage 屬性是讓你為映射器接口文件設置基本的包路徑。 你可以使用分號或逗號 作為分隔符設置多于一個的包路徑。每個映射器將會在指定的包路徑中遞歸地被搜索到。

注 意 , 沒 有 必 要 去 指 定 SqlSessionFactory 或 SqlSessionTemplate , 因 為 MapperScannerConfigurer 將會創建 MapperFactoryBean,之后自動裝配。但是,如果你使 用了一個 以上的 DataSource ,那 么自動 裝配可 能會失效 。這種 情況下 ,你可 以使用 sqlSessionFactoryBeanName 或 sqlSessionTemplateBeanName 屬性來設置正確的 bean 名 稱來使用。這就是它如何來配置的,注意 bean 的名稱是必須的,而不是 bean 的引用,因 此,value 屬性在這里替代通常的 ref:

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/70255.html

相關文章

  • mybatisspringMVC整合及其中問題

    摘要:的整合大致結構中放置的配置文件,由于這個例子很簡單,所以配置得比較簡單。在與的整合中,在這里不用配置,因為在整合包中有的掃描類。中配置的是和整合的配置。其中包括數據源數據池的配置的配置掃描器的配置還有事務的配置。所以將改了就解決問題了 1. springMVC+spring+mybatis的整合大致結構: showImg(https://segmentfault.com/img/bVb...

    EscapedDog 評論0 收藏0
  • 分布式軟件架構整合(一)

    摘要:通過整合及可以實現數據庫查詢后將數據持久化。但是可能出現幻像讀這是花費最高代價但是最可靠的事務隔離級別。事務被處理為順序執行。 所需技術:spring、mybatis、druid、flyway、logback、nodejs、html、css3 ;目標:創建一個業務框架,后端采用spring+mybatis,中間層采用node,前端html5,css3等; showImg(https:/...

    mochixuan 評論0 收藏0
  • 5、springcloud整合mybatis注解方式

    摘要:上一篇學習了服務提供者,但是并不是單單就學習了服務提供者。中間還穿插使用了數據源和整合。但是上篇使用時還是沿用了老的方式,需要配置對應的文件。 1、上一篇學習了服務提供者provider,但是并不是單單就學習了服務提供者。中間還穿插使用了Hikari數據源和spring cloud整合mybatis。但是上篇使用mybatis時還是沿用了老的方式,需要配置mapper對應的xml文件。...

    ingood 評論0 收藏0
  • Spring Boot - 整合JdbcTemplate、MyBatis

    摘要:更簡答的說就是要么全部執行成功,要么撤銷不執行。因此,數據庫操作的事務習慣上就稱為事務。實現原理單機事務事務是用對象控制的。接口提供了兩種事務模式自動提交和手工提交。事務多機事務,通過實現,需要驅動支持。局限于應用使用。 Spring Boot - 數據庫配置 回顧 Spring Boot - 初識 Hello World Spring Boot - Servlet、過濾器、監聽器、...

    Keagan 評論0 收藏0
  • Spring Boot 教程(三): Spring Boot 整合Mybatis

    摘要:教程簡介本項目內容為教程樣例。目的是通過學習本系列教程,讀者可以從到掌握的知識,并且可以運用到項目中。 教程簡介 本項目內容為Spring Boot教程樣例。目的是通過學習本系列教程,讀者可以從0到1掌握spring boot的知識,并且可以運用到項目中。如您覺得該項目對您有用,歡迎點擊收藏和點贊按鈕,給予支持!!教程連載中,歡迎持續關注! 環境 IDE: Eclipse NeonJa...

    Xufc 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<