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ù)庫的表

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

3.pom.xml依賴添加






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

5.spring_mybatis.xml配置文件



6.User類

7.BaseDAO接口

8.UserDAO接口

9.UserService接口


10.UserServiceImpl實現(xiàn)類

11.對UserServiceImpl進行junit單元測試

