MyBatis核心技術全解與項目實戰

賴帆(@谷哥的小弟 )

  • 出版商: 人民郵電
  • 出版日期: 2024-02-01
  • 定價: $719
  • 售價: 8.5$611
  • 語言: 簡體中文
  • 頁數: 360
  • ISBN: 711563565X
  • ISBN-13: 9787115635655
  • 下單後立即進貨 (約2週~3週)

  • MyBatis核心技術全解與項目實戰-preview-1
  • MyBatis核心技術全解與項目實戰-preview-2
MyBatis核心技術全解與項目實戰-preview-1

買這商品的人也買了...

商品描述

在現在的Java企業級應用中,常見的組合是Spring+Spring MVC+MyBatis(SSM)。MyBatis作為Java後台開發的核心主流框架之一,性能優異、使用者眾多,讀者基礎較廣。本書是一本詳細介紹MyBatis框架使用指南的書,一切從實際項目出發,主要內容包括MyBatis開發環境、基本操作、運行原理、關聯映射、動態SQL、緩存機制、註解開發、插件技術、逆向工程以及國內流行的MyBatis-Plus,最後一章結合Spring Boot技術詳細介紹了MyBatis在項目實戰中的應用。

本書適合Java程序員閱讀。

作者簡介

赖帆(@谷哥的小弟),CSDN技术博主,十余年一线开发经验。历任研发工程师、技术组长、高级开发工程师、技术经理、技术部门主管等职位。曾任职于上市集团研发中心,精通Java、C/C++、Python、SQL、JavaScript、Go等主流开发语言。擅长互联网应用开发与实践,热衷于开源技术,对Spring Boot、Spring Cloud、Vue、Flutter等热门技术有着深入的研究。

长期以来,作者坚持在CSDN输出优质技术博客。曾于2016年、2020年两度荣获CSDN年度十大博客之星。截至2023年年底,共创作1400多篇优质博文,博客访问量累计达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 開發環境的搭建 4

1.2.1 基礎環境檢查 4

1.2.2 創建項目 4

1.2.3 配置Maven 6

1.3 入門案例開發詳解 7

1.3.1 案例開發準備 7

1.3.2 創建Module 8

1.3.3 Module的結構 10

1.3.4 設置打包方式 10

1.3.5 添加依賴 11

1.3.6 添加日誌配置文件 12

1.3.7 創建實體類 12

1.3.8 創建接口文件 13

1.3.9 創建映射文件 13

1.3.10 編寫全局配置文件 14

1.3.11 編寫測試代碼 15

1.3.12 入門案例總結 17

1.4 核心基礎 17

1.4.1 MyBatis獲取參數的兩種方式 17

1.4.2 增刪改查標簽 18

1.4.3 增刪改查案例實踐 19

1.4.4 SqlSession工具類 27

1.4.5 增刪改查案例優化 28

1.5 小結 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關鍵API 41

2.2.1 SqlSessionFactoryBuilder 42

2.2.2 SqlSessionFactory 42

2.2.3 SqlSession 43

2.3 MyBatis運行原理 45

2.4 小結 46

第3章 MyBatis開發技能進階 47

3.1 查詢操作詳解 47

3.1.1 查詢單行數據,返回單個對象 47

3.1.2 查詢多行數據,返回List集合 49

3.1.3 統計記錄條數 50

3.1.4 查詢單行數據,返回Map集合 51

3.1.5 查詢多行數據,返回Map集合 53

3.1.6 模糊查詢 54

3.2 參數傳遞與接收 55

3.2.1 傳遞和接收單個普通類型參數 56

3.2.2 傳遞和接收多個普通類型參數 57

3.2.3 利用@Param註解傳遞多個普通類型參數 58

3.2.4 傳遞和接收單個POJO參數 60

3.2.5 傳遞和接收多個POJO參數 61

3.2.6 利用@Param註解傳遞多個POJO類型參數 63

3.2.7 傳遞和接收Map類型參數 64

3.2.8 傳遞和接收List類型參數 66

3.2.9 傳遞和接收數組類型參數 67

3.3 實用小技能 68

3.3.1 獲取自增的主鍵值 68

3.3.2 傳遞表名 72

3.3.3 批量刪除 73

3.4 小結 75

第4章 MyBatis關聯映射 76

4.1 resultType與自動映射 76

4.1.1 利用字段別名實現自動映射 78

4.1.2 利用全局配置實現自動映射 79

4.2 自定義結果映射resultMap 81

4.3 一對一查詢 83

4.3.1 案例開發準備 83

4.3.2 方式一 84

4.3.3 方式二 86

4.3.4 方式三 88

4.3.5 MyBatis延遲加載 90

4.4 多對一查詢 91

4.4.1 案例開發準備 92

4.4.2 方式一 93

4.4.3 方式二 95

4.4.4 方式三 97

4.5 一對多查詢 98

4.5.1 案例開發準備 98

4.5.2 方式一 100

4.5.3 方式二 101

4.6 多對多查詢 104

4.6.1 案例開發準備 104

4.6.2 方式一 106

4.6.3 方式二 108

4.7 小結 110

第5章 MyBatis動態SQL 111

5.1 案例開發準備 111

5.2 常用標簽詳解與應用 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 小結 130

第6章 MyBatis緩存機制 131

6.1 一級緩存 131

6.1.1 一級緩存應用實踐 132

6.1.2 一級緩存失效情形 135

6.1.3 一級緩存失效案例 135

6.2 二級緩存 137

6.2.1 二級緩存使用方式 138

6.2.2 二級緩存應用實踐 138

6.2.3 二級緩存屬性詳解 141

6.2.4 二級緩存回收策略 141

6.2.5 二級緩存失效情形 142

6.2.6 二級緩存失效案例 142

6.3 第三方緩存 143

6.3.1 導入依賴 144

6.3.2 編寫配置文件ehcache.xml 144

6.3.3 設置二級緩存類型 145

6.3.4 編寫日誌文件logback.xml 146

6.3.5 接口文件 146

6.3.6 映射文件 146

6.3.7 測試代碼 147

6.3.8 測試結果 148

6.4 小結 148

第7章 MyBatis註解開發 149

7.1 常用註解概述 149

7.2 基於註解的增刪改查 149

7.2.1 案例開發準備 150

7.2.2 接口文件 150

7.2.3 測試代碼 150

7.3 基於註解的關聯映射 152

7.3.1 案例開發準備 152

7.3.2 一對一查詢 153

7.3.3 多對一查詢 153

7.3.4 一對多查詢 154

7.3.5 多對多查詢 154

7.4 小結 155

第8章 MyBatis分頁插件 156

8.1 分頁基本原理 156

8.2 PageHelper的核心API 156

8.2.1 開啟分頁查詢 156

8.2.2 PageInfo的構造函數 157

8.2.3 PageInfo的主要屬性 157

8.3 PageHelper的使用方法 157

8.4 PageHelper案例詳解 158

8.4.1 案例開發準備 158

8.4.2 接口文件 160

8.4.3 映射文件 160

8.4.4 測試代碼 160

8.4.5 測試結果 162

8.5 PageInfo源碼剖析 163

8.6 小結 164

第9章 MyBatis逆向工程 165

9.1 MBG入門案例 165

9.1.1 案例開發準備 165

9.1.2 創建Module 167

9.1.3 編寫MBG配置文件 169

9.1.4 執行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應用詳解 174

9.3.1 依據主鍵查詢數據 175

9.3.2 查詢所有數據 176

9.3.3 依據條件查詢數據 177

9.3.4 統計滿足條件的記錄 178

9.3.5 依據主鍵id刪除數據 179

9.3.6 依據條件刪除數據 179

9.3.7 插入數據 180

9.3.8 選擇性插入數據 181

9.3.9 依據主鍵更新數據 182

9.3.10 依據主鍵選擇性更新數據 183

9.3.11 依據條件更新數據 184

9.3.12 依據條件選擇性更新數據 185

9.4 小結 186

第 10章 MyBatis-Plus開發入門 187

10.1 MyBatis-Plus入門案例 188

10.1.1 案例開發準備 188

10.1.2 創建工程 189

10.1.3 添加依賴 191

10.1.4 編寫配置 191

10.1.5 編寫POJO 191

10.1.6 創建接口文件 192

10.1.7 完善入口類 192

10.1.8 編寫測試代碼 192

10.1.9 入門案例總結 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 條件構造器詳解 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 條件構造器案例 209

10.5.1 案例開發準備 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 小結 222

10.7 IService概要 222

10.8 IService使用案例 223

10.8.1 案例開發準備 223

10.8.2 編寫UserService接口 223

10.8.3 編寫UserService實現類 224

10.8.4 插入操作 224

10.8.5 更新操作 226

10.8.6 查詢操作 228

10.8.7 刪除操作 232

10.8.8 統計操作 234

10.9 小結 234

第 11章 MyBatis-Plus註解開發 235

11.1 常用註解概述 235

11.2 註解應用案例 237

11.2.1 案例開發準備 237

11.2.2 編寫枚舉類 238

11.2.3 編寫POJO 239

11.2.4 編寫接口文件 239

11.2.5 編寫測試程序 239

11.3 小結 243

第 12章 MyBatis-Plus代碼生成器 244

12.1 代碼生成器應用案例 244

12.1.1 案例開發準備 244

12.1.2 創建工程 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接口實現類 253

12.2.6 DoctorController控制器 254

12.3 小結 254

第 13章 MyBatis-Plus多數據源 255

13.1 多數據源策略 255

13.2 多數據源應用案例 256

13.2.1 案例開發準備 256

13.2.2 創建工程 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接口實現類 263

13.2.9 完善入口類 263

13.2.10 編寫測試代碼 264

13.3 小結 266

第 14章 MyBatis-Plus插件技術 267

14.1 分頁插件 267

14.1.1 案例開發準備 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接口實現類 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 快速開發插件 280

14.3.1 安裝Lombok 281

14.3.2 安裝MyBatisX 282

14.3.3 MyBatisX使用案例 283

14.4 小結 293

第 15章 MyBatis項目開發實戰 294

15.1 項目概覽 294

15.1.1 功能介紹 294

15.1.2 核心技術 295

15.1.3 項目展示 295

15.2 項目搭建 304

15.2.1 數據庫設計 304

15.2.2 創建項目 305

15.2.3 完善項目結構 308

15.2.4 添加依賴 309

15.2.5 編寫配置文件 310

15.2.6 編寫登錄攔截器 311

15.2.7 編寫項目配置類 311

15.2.8 配置項目啟動類 312

15.3 數據字典模塊開發 313

15.3.1 數據訪問層 313

15.3.2 業務邏輯層 313

15.4 “員工管理”模塊開發 314

15.4.1 系統登錄 314

15.4.2 員工查詢 317

15.4.3 新增員工 320

15.4.4 刪除員工 323

15.4.5 修改員工 326

15.5 “客戶管理”模塊開發 329

15.5.1 客戶查詢 329

15.5.2 新增客戶 333

15.5.3 刪除客戶 337

15.5.4 修改客戶 340

15.6 “新聞分析”模塊開發 344

15.6.1 新聞查詢 344

15.6.2 新增新聞 347

15.6.3 刪除新聞 350

15.6.4 修改新聞 353

15.6.5 查看新聞 356

15.7 “統計分析”模塊開發 357

15.7.1 數據訪問層 357

15.7.2 業務邏輯層 358

15.7.3 請求處理層 358

15.7.4 前端頁面 359

15.8 小結 360