Mybatis 通用 Mapper 和 Spring 集成

1.什么是MyBatis

MyBatis是一個Java持久化框架,它通過XML描述符或注解把對象對象 與存儲過程"存儲過程"或SQL語句關(guān)聯(lián)起來。
與其他的對象關(guān)系映射框架不同,MyBatis并沒有將Java對象 與數(shù)據(jù)庫表關(guān)聯(lián)起來,而是將Java方法與SQL語句關(guān)聯(lián)。MyBatis允許用戶充分利用數(shù)據(jù)庫的各種功能,例如存儲過程、視圖、各種復(fù)雜的查詢以及某數(shù)據(jù)庫的專有特性。如果要對遺留數(shù)據(jù)庫、不規(guī)范的數(shù)據(jù)庫進行操作,或者要完全控制SQL的執(zhí)行,MyBatis是一個不錯的選擇。

與JDBC相比,MyBatis簡化了相關(guān)代碼:SQL語句在一行代碼中就能執(zhí)行。MyBatis提供了一個映射引擎,聲明式的把SQL語句執(zhí)行結(jié)果與對象樹映射起來。通過使用一種內(nèi)建的類XML表達式語言,或者使用Apache Velocity集成的插件,SQL語句可以被動態(tài)的生成。

MyBatis與Spring Framework集成,這使開發(fā)者免于依賴性問題。

MyBatis支持聲明式數(shù)據(jù)緩存(declarative data caching)。當一條SQL語句被標記為“可緩存”后,首次執(zhí)行它時從數(shù)據(jù)庫獲取的所有數(shù)據(jù)會被存儲在一段高速緩存中,今后執(zhí)行這條語句時就會從高速緩存中讀取結(jié)果,而不是再次命中數(shù)據(jù)庫。MyBatis提供了基于 Java HashMap 的默認緩存實現(xiàn),以及用于與OSCache和Memcached連接的默認連接器。MyBatis還提供API供其他緩存實現(xiàn)使用。

2.實例

1.新建一個MySql數(shù)據(jù)庫的表


image.png

2.建立orm模塊結(jié)構(gòu)


image.png

3.pom.xml依賴添加


image.png
image.png
image.png
image.png
image.png
image.png

4.jdbc.properties數(shù)據(jù)庫連接配置


image.png

5.spring_mybatis.xml配置文件


image.png
image.png
image.png

6.User類


image.png

7.BaseDAO接口


image.png

8.UserDAO接口


image.png

9.UserService接口


image.png
image.png

10.UserServiceImpl實現(xiàn)類


image.png

11.對UserServiceImpl進行junit單元測試


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

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

  • MyBatis 是一款優(yōu)秀的持久層框架,它支持定制化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有...
    陶然然_niit閱讀 1,785評論 6 30
  • 1. 簡介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存儲過程以及高級映射的優(yōu)秀的...
    笨鳥慢飛閱讀 6,276評論 0 4
  • MyBatis 理論篇 [TOC] 什么是MyBatis ?MyBatis是支持普通SQL查詢,存儲過程和高級映射...
    有_味閱讀 3,186評論 0 26
  • 不知為什么,在十二屬相中,人們不討厭狡猾猥瑣的老鼠,不討厭兇殘無比的老虎,偏偏把矛頭對向溫順老實的羊。 看到了嗎?...
    小墨梅閱讀 208評論 0 1
  • 文!可可易希 我身邊的朋友同事,都是和我一樣過著歲月靜好的平凡生活。因此對于2019年的到來并沒有對過去一年長篇大...
    可可易希閱讀 634評論 9 18

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