注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計MyBatis核心技術(shù)全解與項目實戰(zhàn)

MyBatis核心技術(shù)全解與項目實戰(zhàn)

MyBatis核心技術(shù)全解與項目實戰(zhàn)

定 價:¥119.80

作 者: 賴帆(@谷哥的小弟 )
出版社: 人民郵電出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787115635655 出版時間: 2024-02-01 包裝: 平裝
開本: 128開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  在現(xiàn)在的Java企業(yè)級應(yīng)用中,常見的組合是Spring+Spring MVC+MyBatis(SSM)。MyBatis作為Java后臺開發(fā)的核心主流框架之一,性能優(yōu)異、使用者眾多,讀者基礎(chǔ)較廣。本書是一本詳細(xì)介紹MyBatis框架使用指南的書,一切從實際項目出發(fā),主要內(nèi)容包括MyBatis開發(fā)環(huán)境、基本操作、運行原理、關(guān)聯(lián)映射、動態(tài)SQL、緩存機制、注解開發(fā)、插件技術(shù)、逆向工程以及國內(nèi)流行的MyBatis-Plus,最后一章結(jié)合Spring Boot技術(shù)詳細(xì)介紹了MyBatis在項目實戰(zhàn)中的應(yīng)用。本書適合Java程序員閱讀。

作者簡介

  賴帆(@谷哥的小弟),CSDN技術(shù)博主,十余年一線開發(fā)經(jīng)驗。歷任研發(fā)工程師、技術(shù)組長、高級開發(fā)工程師、技術(shù)經(jīng)理、技術(shù)部門主管等職位。曾任職于上市集團研發(fā)中心,精通Java、C/C++、Python、SQL、JavaScript、Go等主流開發(fā)語言。擅長互聯(lián)網(wǎng)應(yīng)用開發(fā)與實踐,熱衷于開源技術(shù),對Spring Boot、Spring Cloud、Vue、Flutter等熱門技術(shù)有著深入的研究。長期以來,作者堅持在CSDN輸出優(yōu)質(zhì)技術(shù)博客。曾于2016年、2020年兩度榮獲CSDN年度十大博客之星。截至2023年年底,共創(chuàng)作1400多篇優(yōu)質(zhì)博文,博客訪問量累計達370萬。

圖書目錄

第 1章 MyBatis快速上手 1
1.1 概要 1
1.1.1 MyBatis的主要特征 1
1.1.2 ORM模型概要 2
1.1.3 MyBatis與Hibernate的比較 2
1.1.4 MyBatis的下載與使用 3
1.2 開發(fā)環(huán)境的搭建 4
1.2.1 基礎(chǔ)環(huán)境檢查 4
1.2.2 創(chuàng)建項目 4
1.2.3 配置Maven 6
1.3 入門案例開發(fā)詳解 7
1.3.1 案例開發(fā)準(zhǔn)備 7
1.3.2 創(chuàng)建Module 8
1.3.3 Module的結(jié)構(gòu) 10
1.3.4 設(shè)置打包方式 10
1.3.5 添加依賴 11
1.3.6 添加日志配置文件 12
1.3.7 創(chuàng)建實體類 12
1.3.8 創(chuàng)建接口文件 13
1.3.9 創(chuàng)建映射文件 13
1.3.10 編寫全局配置文件 14
1.3.11 編寫測試代碼 15
1.3.12 入門案例總結(jié) 17
1.4 核心基礎(chǔ) 17
1.4.1 MyBatis獲取參數(shù)的兩種方式 17
1.4.2 增刪改查標(biāo)簽 18
1.4.3 增刪改查案例實踐 19
1.4.4 SqlSession工具類 27
1.4.5 增刪改查案例優(yōu)化 28
1.5 小結(jié) 32
第 2章 MyBatis運行原理剖析 33
2.1 MyBatis全局配置文件 33
2.1.1  34
2.1.2  35
2.1.3  35
2.1.4  37
2.1.5  38
2.1.6  38
2.1.7  38
2.1.8  40
2.1.9  40
2.2 MyBatis關(guān)鍵API 41
2.2.1 SqlSessionFactoryBuilder 42
2.2.2 SqlSessionFactory 42
2.2.3 SqlSession 43
2.3 MyBatis運行原理 45
2.4 小結(jié) 46
第3章 MyBatis開發(fā)技能進階 47
3.1 查詢操作詳解 47
3.1.1 查詢單行數(shù)據(jù),返回單個對象 47
3.1.2 查詢多行數(shù)據(jù),返回List集合 49
3.1.3 統(tǒng)計記錄條數(shù) 50
3.1.4 查詢單行數(shù)據(jù),返回Map集合 51
3.1.5 查詢多行數(shù)據(jù),返回Map集合 53
3.1.6 模糊查詢 54
3.2 參數(shù)傳遞與接收 55
3.2.1 傳遞和接收單個普通類型參數(shù) 56
3.2.2 傳遞和接收多個普通類型參數(shù) 57
3.2.3 利用@Param注解傳遞多個普通類型參數(shù) 58
3.2.4 傳遞和接收單個POJO參數(shù) 60
3.2.5 傳遞和接收多個POJO參數(shù) 61
3.2.6 利用@Param注解傳遞多個POJO類型參數(shù) 63
3.2.7 傳遞和接收Map類型參數(shù) 64
3.2.8 傳遞和接收List類型參數(shù) 66
3.2.9 傳遞和接收數(shù)組類型參數(shù) 67
3.3 實用小技能 68
3.3.1 獲取自增的主鍵值 68
3.3.2 傳遞表名 72
3.3.3 批量刪除 73
3.4 小結(jié) 75
第4章 MyBatis關(guān)聯(lián)映射 76
4.1 resultType與自動映射 76
4.1.1 利用字段別名實現(xiàn)自動映射 78
4.1.2 利用全局配置實現(xiàn)自動映射 79
4.2 自定義結(jié)果映射resultMap 81
4.3 一對一查詢 83
4.3.1 案例開發(fā)準(zhǔn)備 83
4.3.2 方式一 84
4.3.3 方式二 86
4.3.4 方式三 88
4.3.5 MyBatis延遲加載 90
4.4 多對一查詢 91
4.4.1 案例開發(fā)準(zhǔn)備 92
4.4.2 方式一 93
4.4.3 方式二 95
4.4.4 方式三 97
4.5 一對多查詢 98
4.5.1 案例開發(fā)準(zhǔn)備 98
4.5.2 方式一 100
4.5.3 方式二 101
4.6 多對多查詢 104
4.6.1 案例開發(fā)準(zhǔn)備 104
4.6.2 方式一 106
4.6.3 方式二 108
4.7 小結(jié) 110
第5章 MyBatis動態(tài)SQL 111
5.1 案例開發(fā)準(zhǔn)備 111
5.2 常用標(biāo)簽詳解與應(yīng)用 112
5.2.1  113
5.2.2  114
5.2.3 、、 116
5.2.4  118
5.2.5  120
5.2.6  122
5.2.7  123
5.2.8  128
5.2.9  128
5.3 小結(jié) 130
第6章 MyBatis緩存機制 131
6.1 一級緩存 131
6.1.1 一級緩存應(yīng)用實踐 132
6.1.2 一級緩存失效情形 135
6.1.3 一級緩存失效案例 135
6.2 二級緩存 137
6.2.1 二級緩存使用方式 138
6.2.2 二級緩存應(yīng)用實踐 138
6.2.3 二級緩存屬性詳解 141
6.2.4 二級緩存回收策略 141
6.2.5 二級緩存失效情形 142
6.2.6 二級緩存失效案例 142
6.3 第三方緩存 143
6.3.1 導(dǎo)入依賴 144
6.3.2 編寫配置文件ehcache.xml 144
6.3.3 設(shè)置二級緩存類型 145
6.3.4 編寫日志文件logback.xml 146
6.3.5 接口文件 146
6.3.6 映射文件 146
6.3.7 測試代碼 147
6.3.8 測試結(jié)果 148
6.4 小結(jié) 148
第7章 MyBatis注解開發(fā) 149
7.1 常用注解概述 149
7.2 基于注解的增刪改查 149
7.2.1 案例開發(fā)準(zhǔn)備 150
7.2.2 接口文件 150
7.2.3 測試代碼 150
7.3 基于注解的關(guān)聯(lián)映射 152
7.3.1 案例開發(fā)準(zhǔn)備 152
7.3.2 一對一查詢 153
7.3.3 多對一查詢 153
7.3.4 一對多查詢 154
7.3.5 多對多查詢 154
7.4 小結(jié) 155
第8章 MyBatis分頁插件 156
8.1 分頁基本原理 156
8.2 PageHelper的核心API 156
8.2.1 開啟分頁查詢 156
8.2.2 PageInfo的構(gòu)造函數(shù) 157
8.2.3 PageInfo的主要屬性 157
8.3 PageHelper的使用方法 157
8.4 PageHelper案例詳解 158
8.4.1 案例開發(fā)準(zhǔn)備 158
8.4.2 接口文件 160
8.4.3 映射文件 160
8.4.4 測試代碼 160
8.4.5 測試結(jié)果 162
8.5 PageInfo源碼剖析 163
8.6 小結(jié) 164
第9章 MyBatis逆向工程 165
9.1 MBG入門案例 165
9.1.1 案例開發(fā)準(zhǔn)備 165
9.1.2 創(chuàng)建Module 167
9.1.3 編寫MBG配置文件 169
9.1.4 執(zhí)行MBG插件 170
9.2 逆向工程代碼剖析 171
9.2.1 POJO 171
9.2.2 Example 173
9.2.3 接口文件 174
9.2.4 映射文件 174
9.3 MBG應(yīng)用詳解 174
9.3.1 依據(jù)主鍵查詢數(shù)據(jù) 175
9.3.2 查詢所有數(shù)據(jù) 176
9.3.3 依據(jù)條件查詢數(shù)據(jù) 177
9.3.4 統(tǒng)計滿足條件的記錄 178
9.3.5 依據(jù)主鍵id刪除數(shù)據(jù) 179
9.3.6 依據(jù)條件刪除數(shù)據(jù) 179
9.3.7 插入數(shù)據(jù) 180
9.3.8 選擇性插入數(shù)據(jù) 181
9.3.9 依據(jù)主鍵更新數(shù)據(jù) 182
9.3.10 依據(jù)主鍵選擇性更新數(shù)據(jù) 183
9.3.11 依據(jù)條件更新數(shù)據(jù) 184
9.3.12 依據(jù)條件選擇性更新數(shù)據(jù) 185
9.4 小結(jié) 186
第 10章 MyBatis-Plus開發(fā)入門 187
10.1 MyBatis-Plus入門案例 188
10.1.1 案例開發(fā)準(zhǔn)備 188
10.1.2 創(chuàng)建工程 189
10.1.3 添加依賴 191
10.1.4 編寫配置 191
10.1.5 編寫POJO 191
10.1.6 創(chuàng)建接口文件 192
10.1.7 完善入口類 192
10.1.8 編寫測試代碼 192
10.1.9 入門案例總結(jié) 193
10.2 主鍵雪花算法 193
10.3 BaseMapper詳解 194
10.3.1 查詢操作 197
10.3.2 更新操作 200
10.3.3 插入操作 201
10.3.4 刪除操作 203
10.4 條件構(gòu)造器詳解 206
10.4.1 比較 206
10.4.2 范圍 206
10.4.3 模糊匹配 207
10.4.4 空值判斷 207
10.4.5 分組與排序 207
10.4.6 拼接與嵌套 208
10.4.7 條件組拼判斷 208
10.5 條件構(gòu)造器案例 209
10.5.1 案例開發(fā)準(zhǔn)備 209
10.5.2 QueryWrapper示例 209
10.5.3 UpdateWrapper示例 217
10.5.4 LambdaQueryWrapper示例 219
10.5.5 LambdaUpdateWrapper示例 220
10.6 MyBatis-Plus自定義操作 221
10.6.1 編寫接口文件 221
10.6.2 編寫映射文件 221
10.6.3 編寫測試代碼 222
10.6.4 小結(jié) 222
10.7 IService概要 222
10.8 IService使用案例 223
10.8.1 案例開發(fā)準(zhǔn)備 223
10.8.2 編寫UserService接口 223
10.8.3 編寫UserService實現(xiàn)類 224
10.8.4 插入操作 224
10.8.5 更新操作 226
10.8.6 查詢操作 228
10.8.7 刪除操作 232
10.8.8 統(tǒng)計操作 234
10.9 小結(jié) 234
第 11章 MyBatis-Plus注解開發(fā) 235
11.1 常用注解概述 235
11.2 注解應(yīng)用案例 237
11.2.1 案例開發(fā)準(zhǔn)備 237
11.2.2 編寫枚舉類 238
11.2.3 編寫POJO 239
11.2.4 編寫接口文件 239
11.2.5 編寫測試程序 239
11.3 小結(jié) 243
第 12章 MyBatis-Plus代碼生成器 244
12.1 代碼生成器應(yīng)用案例 244
12.1.1 案例開發(fā)準(zhǔn)備 244
12.1.2 創(chuàng)建工程 245
12.1.3 添加依賴 245
12.1.4 編寫配置文件 246
12.1.5 運行代碼生成器 247
12.1.6 完善入口類 248
12.1.7 測試自動生成代碼 249
12.2 自動生成代碼剖析 250
12.2.1 Doctor實體類 250
12.2.2 DoctorMapper.java接口文件 252
12.2.3 DoctorMapper.xml映射文件 253
12.2.4 IDoctorService接口 253
12.2.5 IDoctorService接口實現(xiàn)類 253
12.2.6 DoctorController控制器 254
12.3 小結(jié) 254
第 13章 MyBatis-Plus多數(shù)據(jù)源 255
13.1 多數(shù)據(jù)源策略 255
13.2 多數(shù)據(jù)源應(yīng)用案例 256
13.2.1 案例開發(fā)準(zhǔn)備 256
13.2.2 創(chuàng)建工程 259
13.2.3 添加依賴 259
13.2.4 編寫配置文件 260
13.2.5 編寫POJO 261
13.2.6 編寫接口文件 262
13.2.7 編寫Service接口 262
13.2.8 編寫Service接口實現(xiàn)類 263
13.2.9 完善入口類 263
13.2.10 編寫測試代碼 264
13.3 小結(jié) 266
第 14章 MyBatis-Plus插件技術(shù) 267
14.1 分頁插件 267
14.1.1 案例開發(fā)準(zhǔn)備 267
14.1.2 新建工程 268
14.1.3 添加依賴 269
14.1.4 編寫配置文件 269
14.1.5 編寫POJO 270
14.1.6 編寫接口文件 270
14.1.7 編寫Service接口 270
14.1.8 編寫Service接口實現(xiàn)類 271
14.1.9 配置分頁插件 271
14.1.10 完善入口類 271
14.1.11 編寫測試代碼 272
14.1.12 自定義分頁查詢 273
14.2 樂觀鎖插件 275
14.2.1 添加@Version注解 275
14.2.2 配置樂觀鎖插件 276
14.2.3 測試樂觀鎖插件 276
14.3 快速開發(fā)插件 280
14.3.1 安裝Lombok 281
14.3.2 安裝MyBatisX 282
14.3.3 MyBatisX使用案例 283
14.4 小結(jié) 293
第 15章 MyBatis項目開發(fā)實戰(zhàn) 294
15.1 項目概覽 294
15.1.1 功能介紹 294
15.1.2 核心技術(shù) 295
15.1.3 項目展示 295
15.2 項目搭建 304
15.2.1 數(shù)據(jù)庫設(shè)計 304
15.2.2 創(chuàng)建項目 305
15.2.3 完善項目結(jié)構(gòu) 308
15.2.4 添加依賴 309
15.2.5 編寫配置文件 310
15.2.6 編寫登錄攔截器 311
15.2.7 編寫項目配置類 311
15.2.8 配置項目啟動類 312
15.3 數(shù)據(jù)字典模塊開發(fā) 313
15.3.1 數(shù)據(jù)訪問層 313
15.3.2 業(yè)務(wù)邏輯層 313
15.4 “員工管理”模塊開發(fā) 314
15.4.1 系統(tǒng)登錄 314
15.4.2 員工查詢 317
15.4.3 新增員工 320
15.4.4 刪除員工 323
15.4.5 修改員工 326
15.5 “客戶管理”模塊開發(fā) 329
15.5.1 客戶查詢 329
15.5.2 新增客戶 333
15.5.3 刪除客戶 337
15.5.4 修改客戶 340
15.6 “新聞分析”模塊開發(fā) 344
15.6.1 新聞查詢 344
15.6.2 新增新聞 347
15.6.3 刪除新聞 350
15.6.4 修改新聞 353
15.6.5 查看新聞 356
15.7 “統(tǒng)計分析”模塊開發(fā) 357
15.7.1 數(shù)據(jù)訪問層 357
15.7.2 業(yè)務(wù)邏輯層 358
15.7.3 請求處理層 358
15.7.4 前端頁面 359
15.8 小結(jié) 360

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號