談起MyBatis,我先提個問:什么是 MyBatis ?
MyBatis 是支持定制化 SQL、存盤程序以及高級映射的優秀的持久層框架,MyBatis 避免了幾乎所有的 JDBC 代碼和手動設定引數以及獲取結果集,MyBatis 可以對配置和原生Map使用簡單的 XML 或注解,將介面和 Java 的 POJOs(Plain Old Java Objects,普通的 Java物件)映射成資料庫中的記錄...
而今天咱要聊的就是Alibaba珍藏版mybatis手寫檔案,刷到的朋友真香警告呀!

宣告:篇幅有限,Alibaba珍藏版mybatis手寫檔案還有一些面試決議+腦圖等等,說的都不是很仔細,但可分享源檔案給刷到此文的朋友,珍藏刷起來!

珍藏版(1)——Mybatis入門
1.什么是MyBatis
2.為什么我們要用Mybatis?
3.Mybatis快速入門
-
3.1 匯入開發包
-
3.2準備測驗作業
-
3.3 創建mybatis組態檔
-
3.4 撰寫工具類測驗是否獲取到連接
-
3.5 創建物體與映射關系檔案
-
3.6 撰寫DAO
4.Mybatis作業流程
5.完成CRUD操作
-
5.1 增加學生
-
5.2 根據ID查詢資料
-
5.3 查詢所有資料
-
5.4 根據id洗掉
-
5.5 修改
-
5.6 小細節
-
5.7 Mybatis分頁
6.動態SQL
-
6.1 動態查詢
-
6.2 動態更新
-
6.3 動態洗掉
-
6.4 動態插入
7.入門總結

珍藏版(2)——Mybatis配置資訊
1.映射檔案
-
1.1 占位符
-
1.2 主鍵生成策略
-
1.2.1 UUID
-
1.3 主鍵回傳
-
1.4 resultMap
-
1.5 resultMap和resultType區別
-
1.6 使用resultMap
-
1.7 resultType和resultMap用法總結
-
1.8 Mybatis映射檔案處理特殊字符
2.組態檔
-
2.1 別名
-
2.2 Mapper加載
-
2.3 延遲加載
-
2.4 延遲加載測驗
3.配置相關總結

珍藏版(3)——關聯映射
1.Mybatis【多表連接】
1.1—對一
-
1.1.1 設計表
-
1.1.2 物體
-
1.1.3 映射檔案
-
1.1.4 DAO層
1.2—對多
-
1.2.1 設計資料庫表
-
1.2.2 物體
-
1.2.3 映射檔案SQL陳述句
-
1.2.4 DAO
1.3多對多
-
1.3.1 資料庫表
-
1.3.2 物體
-
1.3.3 映射檔案
-
1.3.4 DAO
2.關聯映射總結

image
珍藏版(4)——快取+Mapper代理+逆向工程
1.前言
2.Mybatis快取
-
2.1 Mybatis—級快取
-
2.2 Mybatis二級快取
-
2.3 Mybatis二級快取配置
-
2.4 查詢結果映射的pojo序列化
-
2.5 禁用二級快取
-
2.6 重繪快取
-
2.7 了解軍Mybatis快取的—些參
3.mybatis和ehcache快取框架整合
-
3.1 整合jar包
-
3.2 ehcache.xml配置資訊
-
3.3 應用場景與局限性
-
3.3.1 應用場景
-
3.3.2 局限性
4.Mapper代理方式
-
4.1 Mapper開發規范
-
4.2 Mapper代理回傳值問題
5.Mybatis解決JDBC編程的問題
6.Mybatis逆向工程
-
6.1修改pom.xml檔案
-
6.2 generatorConfig.xml組態檔
-
6.3 使用插件步驟
-
6.4 最后生成代碼

珍藏版(5)——Mybatis整合Spring
1.Mybatis與Spring整合
-
1.1 匯入jar包
-
1.2 創建表
-
1.3 創建物體
-
1.4 創建物體與表的映射檔案
-
1.5 創建Mybatis映射檔案配置環境
-
1.6 配置Spring核心過濾器【也是加載總組態檔】
-
1.7 配置資料庫資訊、事務
-
1.8 創建Dao、Service、Action
-
1.9 JSP頁面測驗
2.總結

手把手教你整合開發MyBatis-Spring專案——《深入淺出MBati技術原理與實戰》

《深入淺出MBati技術原理與實戰》總共是分為三大部分:
第一部分是MyBatis基礎應用,主要介紹如何高效地使用MyBatis,
-
第1節:MyBatis 的內容簡介,告訴讀者MyBatis是什么,在何種場景下使用它,
-
第2節:主要介紹MyBatis的基礎模塊及其生命周期,并給出實體,
-
第3節:主要介紹MyBatis 配置的主要含義和內容,
-
第4節:介紹 MyBatis 映射器的主要元素及其使用方法,
-
第5節:介紹動態SQL,助你輕松應對大部分的SQL場景,

image
第二部分是MyBatis 原理,我們將深入原始碼去理解MyBatis的內部運行原理以及插件的開發方法和技巧,
-
第6節:介紹 MyBatis 的決議和運行原理,我們將了解到SqlSession 的構建方法,以及其四大物件是如何作業的,
-
第7節:在第6節的基礎上著重介紹 MyBatis 的插件,這里我們將學習插件的設計原理,以及開發方法和注意的要點,

第三部分是MyBatis的實戰應用,主要講解 MyBatis的一些實用的場景,
-
第8節:介紹MyBatis-Spring,主要講解如何在Spring 專案中集成 MyBatis應用,幫助讀者在 Spring的環境中順利使用MyBatis,
-
第9節:介紹 MyBatis的實用場景,精選一批典型且又常用的場景,詳細決議每一個場景下,開發人員需要注意避免的一些錯誤和性能上的損失,

?
還有:一本小小的MyBatis原始碼分析書——《MyBatis原始碼分析》


其次:針對MyBatis面試——收整了最常見的一些問題并附上決議
-
1.為什么需要預編譯?
-
2.Mybatis都有哪些Executor執行器?它們之間的區別是什么?
-
3.Mybatis中如何指定使用哪一種Executor執行器?
-
4.Mybatis是否支持延遲加載?如果支持,它的實作原理是什么?
-
5.# {}和${}的區別?
-
6.模糊查詢like陳述句該怎么寫?
-
7.在mapper中如何傳遞多個引數?
-
8.Mybatis如何執行批量操作?
-
9.如何獲得生成的主鍵?
-
10.當物體類中的屬性名和表中的欄位名不一樣 ,怎么辦
-
11.Mapper 撰寫有哪幾種方式?
-
12.什么是MyBatis的介面系結?有哪些實作方式?
-
13.使用MyBatis的mapper介面呼叫時有哪些要求?
-
14.最佳實踐中,通常一個Xml映射檔案,都會寫一個Dao介面與之對應,請問,這個Dao介面的作業原理是什么?Dao介面里的方法,引數不同時,方法能多載嗎?
-
15.Mybatis的Xml映射檔案中,不同的Xml映射檔案,id是否可以重復?
-
16.簡述Mybatis的Xml映射檔案和Mybatis內部資料結構之間的映射關系?
-
17.Mybatis是如何將sql執行結果封裝為目標物件并回傳的?都有哪些映射形式?
-
18.MyBatis中所有標簽?
-
19.MyBatis實作一對一,一對多有幾種方式,怎么操作的?
-
20.Mybatis是否可以映射Enum列舉類?
-
21.Mybatis動態sql是做什么的?都有哪些動態sql?能簡述一下動態sql的執行原理不?
-
22.分頁方式?
-
23.簡述Mybatis的插件運行原理,以及如何撰寫一個插件?
-
24.Mybatis的一級、二級快取?
-
25.pageHelper原理?
關于決議,我已經全部整理,并手繪了一份xmind導圖,如下(一覽無余):

最后:學習總結——MyBtis知識腦圖(純手繪xmind檔案)
學完之后,若是想驗收效果如何,其實最好的方法就是可自己去總結一下,比如我就會在學習完一個東西之后自己去手繪一份xmind檔案的知識梳理大綱腦圖,這樣也可方便后續的復習,且都是自己的理解,相信隨便瞟幾眼就能迅速過完整個知識,腦補回來,下方即為我手繪的MyBtis知識腦圖,由于是xmind檔案,不好上傳,所以小編將其以圖片形式匯出來傳在此處,細節方面不是特別清晰,但可給感興趣的朋友提供完整的MyBtis知識腦圖原件(包括上方的面試決議xmind檔案)

除此之外,前文所提及的Alibaba珍藏版mybatis手寫檔案以及一本小小的MyBatis原始碼分析檔案——《MyBatis原始碼分析》等等相關的學習筆記檔案,也皆可分享給認可的朋友!
——感謝大家伙的認可支持!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/173039.html
標籤:其他
