第1章 概述 1
1.1 Java EE開發技術 2
1.1.1 Java EE的三層架構 2
1.1.2 MVC框架 2
1.1.3 數據訪問層框架 3
1.1.4 視圖技術 3
1.2 JDK的下載與安裝 3
1.3 安裝與配置Maven 4
1.3.1 關於Maven 4
1.3.2 下載與安裝Maven 4
1.3.3 配置遠程倉庫 5
1.4 安裝Eclipse 5
1.4.1 Eclipse版本 5
1.4.2 在Eclipse中配置Maven 5
1.4.3 獲取本書代碼 6
1.5 本章小結 6
第2章 初試Spring Boot 7
2.1 Spring Boot介紹 8
2.1.1 Spring Boot簡介 8
2.1.2 starter模塊 8
2.2 構建第一個Spring Boot程序 9
2.2.1 新建Maven項目 9
2.2.2 編寫啓動類 10
2.2.3 編寫控製器 11
2.2.4 開發環境的熱部署 12
2.3 運行單元測試 12
2.3.1 測試Web服務 12
2.3.2 模擬Web測試 13
2.3.3 測試業務組件 13
2.3.4 模擬業務組件 14
2.4 發布與調用REST服務 15
2.4.1 REST 15
2.4.2 發布REST服務 15
2.4.3 使用RestTemplate調用服務 16
2.4.4 使用Feign調用服務 18
2.5 本章小結 19
第3章 Spring Boot配置 20
3.1 配置文件 21
3.1.1 默認配置文件 21
3.1.2 指定配置文件 22
3.1.3 yml文件 22
3.1.4 使用profile指定配置 23
3.2 Web配置 24
3.2.1 Servlet配置 24
3.2.2 Listener配置 25
3.2.3 Filter配置 26
3.2.4 構建可部署的war包 26
3.2.5 JSP配置 28
3.3 其他配置 30
3.3.1 服務器常用配置 30
3.3.2 響應壓縮 30
3.3.3 SSL配置 32
3.3.4 使用其他服務器 32
3.3.5 服務器訪問日誌 33
3.3.6 banner配置 34
3.4 自定義配置 35
3.4.1 @Value注解 35
3.4.2 定義屬性映射對象 36
3.4.3 使用配置 37
3.4.4 屬性自動識彆 38
3.5 本章小結 39
第4章 Spring Boot的注解 40
4.1 Spring的常用注解 41
4.1.1 bean定義 41
4.1.2 依賴注入 42
4.1.3 使用Primary注解 44
4.1.4 Scope注解 45
4.1.5 方法注入 46
4.1.6 AOP注解 47
4.1.7 ComponentScan注解 49
4.2 高級Spring注解 50
4.2.1 限定注解 50
4.2.2 自定義限定注解 51
4.2.3 自定義bean的生命周期 52
4.3 Spring MVC的常用注解 54
4.3.1 Controller注解 54
4.3.2 RequestMapping注解 55
4.3.3 PathVariable注解 56
4.3.4 MatrixVariable注解 56
4.3.5 RequestParam注解 57
4.3.6 文件上傳 58
4.3.7 RestController注解 58
4.4 Spring Boot的條件注解 59
4.4.1 類條件注解 59
4.4.2 項目依賴問題 60
4.4.3 其他條件注解 61
4.4.4 自定義條件注解 61
4.4.5 Spring Boot的自動配置 62
4.5 本章小結 63
第5章 初試Thymeleaf 64
5.1 Thymeleaf 65
5.1.1 什麼是Thymeleaf 65
5.1.2 支持的模闆類型 65
5.1.3 HTML模闆 65
5.1.4 XML模闆 66
5.2 初試Thymeleaf API 66
5.2.1 處理HTML 66
5.2.2 更換模闆解析器 67
5.2.3 處理資源文件 67
5.2.4 變量處理 68
5.2.5 遍曆集閤 69
5.2.6 設置前綴與後綴 69
5.3 在Servlet應用中整閤Thymeleaf 70
5.3.1 建立項目 70
5.3.2 配置模闆引擎 71
5.3.3 在Servlet中使用Thymeleaf 72
5.3.4 編寫模闆文件 73
5.4 在Struts2中整閤Thymeleaf 74
5.4.1 建立與配置Struts2項目 74
5.4.2 配置Struts Action 75
5.4.3 整閤Themeleaf 76
5.5 在Spring Boot中整閤Thymeleaf 77
5.5.1 建立與配置項目 77
5.5.2 編寫控製器與模闆 78
5.5.3 靜態資源 79
5.6 本章小結 79
第6章 Thymeleaf對象的使用 80
6.1 文本處理 81
6.1.1 外部文本輸齣 81
6.1.2 文本國際化 82
6.1.3 處理轉義文本 83
6.1.4 讀取變量 83
6.1.5 在文本信息中使用變量 84
6.1.6 其他讀取變量的方式 84
6.1.7 鏈接錶達式 85
6.2 基本對象 86
6.2.1 基本對象概述 86
6.2.2 #ctx對象 87
6.2.3 Web對象 87
6.2.4 內置變量 88
6.2.5 使用基本對象的注意事項 88
6.3 數字對象 89
6.3.1 整數格式化 89
6.3.2 小數格式化 90
6.3.3 貨幣格式化 91
6.3.4 百分比格式化 92
6.3.5 使用sequence方法 92
6.4 字符串對象 92
6.4.1 toString與length方法 93
6.4.2 非空判斷與默認值處理 93
6.4.3 包含判斷 94
6.4.4 截取與替換 94
6.4.5 追加與拼接 95
6.4.6 分割與連接 96
6.4.7 大小寫轉換 96
6.4.8 字符串編碼與解碼 97
6.4.9 其他處理 98
6.5 日期對象 98
6.5.1 格式化日期 98
6.5.2 獲取日期字段 99
6.5.3 創建日期 100
6.6 數組與集閤對象 101
6.6.1 數組 101
6.6.2 List與Set 101
6.6.3 Map 101
6.7 其他內置對象 102
6.7.1 messages對象 102
6.7.2 uris對象 102
6.7.3 aggregates對象 103
6.8 本章小結 103
第7章 Thymeleaf常用語法 104
7.1 錶達式語法之運算符 105
7.1.1 錶達式常量 105
7.1.2 字符串拼接 106
7.1.3 算術運算符 106
7.1.4 關係運算符 107
7.1.5 條件運算符 108
7.1.6 無操作符 108
7.2 錶達式語法進階 108
7.2.1 數據轉換 108
7.2.2 自定義數據轉換類 109
7.2.3 Spring Boot數據轉換 110
7.2.4 錶達式預處理 112
7.2.5 錶達式調用工具方法 113
7.3 屬性設置 114
7.3.1 使用th:attr 114
7.3.2 設置HTML節點屬性 114
7.3.3 屬性值拼接 115
7.3.4 HTML5屬性支持 115
7.4 條件判斷與數據迭代 116
7.4.1 條件判斷 116
7.4.2 switch case語法 117
7.4.3 使用th:each屬性 117
7.4.4 常見迭代類型 118
7.4.5 迭代狀態對象 118
7.4.6 數據延遲加載 120
7.4.7 在Spring Boot中使用延遲加載 121
7.4.8 星號錶達式 121
7.5 本章小結 122
第8章 深入Thymeleaf模闆 123
8.1 模闆片斷 124
8.1.1 定義與引用模闆片斷 124
8.1.2 片斷引用語法 125
8.1.3 選擇器的基礎語法 126
8.1.4 選擇器的其他語法 128
8.1.5 insert、replace與include的區彆 128
8.1.6 含有變量的片斷引用 129
8.1.7 片斷塊引用 130
8.1.8 無操作符的使用 131
8.1.9 刪除模闆 132
8.1.10 基本錶達式總結 134
8.2 模闆與邏輯分離 134
8.2.1 邏輯分離例子 134
8.2.2 邏輯分離配置 136
8.2.3 關聯節點的選擇 137
8.3 模闆注釋 137
8.3.1 解析層注釋 138
8.3.2 原型注釋 139
8.4 內聯語法 139
8.4.1 使用內聯語法顯示文本 139
8.4.2 在JavaScript中使用內聯語法 140
8.4.3 在CSS中使用內聯語法 140
8.4.4 內聯語法注釋 141
8.4.5 內聯語法序列化 142
8.5 模闆緩存 143
8.5.1 開啓與配置緩存 143
8.5.2 緩存有效時間 145
8.6 本章小結 146
第9章 Thymeleaf原理與擴展 147
9.1 概念與接口介紹 148
9.1.1 方言 148
9.1.2 處理器 149
9.1.3 模闆處理者 150
9.1.4 模闆解析事件 150
9.1.5 節點與標簽 151
9.2 深入Thymeleaf模闆處理 151
9.2.1 策略模式 151
9.2.2 責任鏈模式 153
9.2.3 閤並使用策略模式與責任鏈模式 156
9.2.4 模闆處理過程 159
9.2.5 模闆事件 161
9.3 處理器 161
9.3.1 預處理器 161
9.3.2 後處理器 163
9.3.3 一般處理器 164
9.3.4 處理器優先級 165
9.3.5 標簽處理器 167
9.3.6 模型處理器 168
9.3.7 邊界處理器 170
9.3.8 其他處理器 170
9.4 Thymeleaf擴展 171
9.4.1 自定義標簽 171
9.4.2 自定義模闆屬性 173
9.4.3 自定義內置對象 175
9.4.4 自定義執行屬性 176
9.5 本章小結 177
第10章 Spring Boot與Thymeleaf整閤 178
10.1 在Spring Boot中配置Thymeleaf 179
10.1.1 模闆引擎配置 179
10.1.2 Spring MVC視圖解析器 181
10.1.3 Thymeleaf視圖解析器 184
10.1.4 數據轉換配置 186
10.1.5 模闆國際化 186
10.2 錶單處理 188
10.2.1 錶單提交 188
10.2.2 使用th:field屬性 189
10.2.3 HTML節點的id生成 190
10.2.4 實現label節點 192
10.2.5 在模闆中處理checkbox與radio 193
10.2.6 錶單提交處理checkbox與radio 195
10.3 錶單驗證 195
10.3.1 錶單驗證 195
10.3.2 修改信息文件 197
10.3.3 輸齣錯誤信息 197
10.4 片斷的使用 198
10.4.1 引用片斷 198
10.4.2 使用bean選擇片斷 199
10.4.3 在控製器中引用片斷 201
10.5 自定義標簽 201
10.5.1 方言與處理器 201
10.5.2 配置方言 203
10.6 本章小結 204
第11章 使用JavaScript庫 205
11.1 使用jQuery 206
11.1.1 概述 206
11.1.2 選擇器 206
11.1.3 事件 207
11.1.4 數據列錶 208
11.1.5 AJAX調用GET方法 209
11.1.6 AJAX調用POST方法 210
11.1.7 錶單驗證 211
11.2 Bootstrap 213
11.2.1 概述 213
11.2.2 數據列錶 214
11.2.3 分頁 215
11.2.4 錶單 218
11.2.5 警告框的使用 219
11.3 Vue.js 221
11.3.1 概述 221
11.3.2 組件 222
11.3.3 指令 224
11.3.4 循環指令 225
11.3.5 錶單驗證 226
11.4 本章小結 227
第12章 數據庫實戰 228
12.1 概述 229
12.1.1 關於Spring Data 229
12.1.2 Spring Data的功能 229
12.1.3 Spring Data模塊 230
12.2 Spring Data與JPA 230
12.2.1 構建項目 230
12.2.2 數據訪問層與業務層 231
12.2.3 自定義數據存儲邏輯 233
12.2.4 方法名查詢 233
12.2.5 使用@Query注解 234
12.3 Spring Data與MongoDB 235
12.3.1 安裝MongoDB 235
12.3.2 配置權限 236
12.3.3 MongoDB的相關概念 236
12.3.4 構建項目 236
12.3.5 數據訪問層與業務層 237
12.3.6 自定義數據存儲邏輯 238
12.3.7 方法名查詢 239
12.3.8 使用@Query注解 240
12.4 Spring Data與Redis 241
12.4.1 Redis的安裝與配置 241
12.4.2 Redis的數據類型 242
12.4.3 使用Jedis 242
12.4.4 構建Spring Data項目 243
12.4.5 數據訪問層與業務層 244
12.4.6 自定義數據存儲邏輯 246
12.4.7 方法名查詢 247
12.5 本章小結 247
第13章 開發微服務 248
13.1 微服務與Spring Cloud 249
13.1.1 微服務簡介 249
13.1.2 Netflix與Spring Cloud 249
13.1.3 Spring Cloud模塊介紹 250
13.2 Eureka服務治理 250
13.2.1 Eureka架構 250
13.2.2 構建服務器 251
13.2.3 服務提供者 253
13.2.4 服務調用者 255
13.2.5 程序結構 257
13.3 Ribbon負載均衡 257
13.3.1 Ribbon介紹 258
13.3.2 第一個Ribbon程序 258
13.3.3 在Spring Cloud中測試使用 Ribbon 259
13.4 客戶端Feign 260
13.4.1 Feign介紹 260
13.4.2 第一個Feign程序 260
13.4.3 使用Feign調用微服務 262
13.5 容錯框架Hystrix 263
13.5.1 Hystrix介紹 263
13.5.2 第一個Hystrix程序 265
13.5.3 在Spring Cloud中整閤Hystrix 266
13.6 本章小結 268
第14章 實戰案例 269
14.1 係統功能及界麵 270
14.1.1 登錄與首頁 270
14.1.2 圖書管理模塊 271
14.1.3 入庫模塊 272
14.1.4 銷售模塊 273
14.1.5 導航組件與分頁組件 274
14.1.6 運行本章案例 275
14.2 數據庫設計 275
14.2.1 用戶錶 275
14.2.2 圖書錶與庫存錶 275
14.2.3 入庫單數據錶 276
14.2.4 銷售單數據錶 276
14.3 搭建項目框架 277
14.3.1 項目依賴與項目結構 277
14.3.2 項目配置 278
14.3.3 實體設計 279
14.3.4 用戶登錄 281
14.3.5 片斷定義 282
14.4 圖書管理 283
14.4.1 數據列錶 283
14.4.2 通用的分頁組件 285
14.4.3 圖片上傳 286
14.4.4 新建圖書 288
14.4.5 查看與修改圖書 289
14.4.6 刪除圖書 290
14.5 銷售單模塊 291
14.5.1 列錶與分頁功能 291
14.5.2 選擇圖書 293
14.5.3 刪除已選圖書與修改數量 295
14.5.4 新建銷售單 297
14.5.5 操作庫存 299
14.6 首頁數據查詢與排序 300
14.6.1 庫存查詢 300
14.6.2 圖書查詢與輪播 301
14.6.3 數據排序 303
14.7 本章小結 304
· · · · · · (
收起)