本書主要介紹Java EE主流開源框架,內(nèi)容包括Spring、Spring MVC、MyBatis三大開源框架的架構(gòu)原理、典型應(yīng)用場景實(shí)現(xiàn)、案例代碼解析等,最后通過一個(gè)綜合案例應(yīng)用這三個(gè)框架。本書通過無框架和使用框架的對比實(shí)現(xiàn)及詳細(xì)的代碼展示,幫助讀者深入理解框架的優(yōu)勢和各框架間的聯(lián)系。本書適合作為職業(yè)院校計(jì)算機(jī)類專業(yè)的教材,也可供具備Java開發(fā)基礎(chǔ)及Java Web項(xiàng)目開發(fā)經(jīng)驗(yàn)的讀者閱讀,還可供對框架有基本了解并希望繼續(xù)深入學(xué)習(xí)的編程愛好者參考。
劉穎是秦皇島職業(yè)技術(shù)學(xué)院信息工程系主任,有豐富的教學(xué)及教研經(jīng)驗(yàn)。秦皇島職業(yè)技術(shù)學(xué)院是國家“雙高計(jì)劃”中國特色高水平專業(yè)群建設(shè)單位,是全國100所“國家骨干高職院校”之一。
目錄
第1部分 導(dǎo) 引 案 例
第1章 簡單案例 2
第2部分 Spring框架
第2章 Spring框架快速入門 13
2.1 Spring框架概述 13
2.2 Spring框架的體系結(jié)構(gòu) 13
2.3 核心概念——IoC 15
2.4 核心概念——AOP 16
第3章 Spring核心組件 17
3.1 BeanFactory與ApplicationContext 17
3.2 Spring bean的基本配置 18
3.3 bean的作用域 19
3.4 實(shí)例化bean的方法 21
3.5 第一個(gè)Spring框架實(shí)例 23
第4章 Spring框架的IoC容器實(shí)現(xiàn) 27
4.1 依賴注入方式 27
4.1.1 手動裝配 28
4.1.2 自動裝配 31
4.2 不同類型的屬性裝配 32
4.3 定制bean的生命周期 35
4.4 BeanFactoryAware及BeanNameAware 38
4.5 Spring方法注入 39
4.6 BeanPostProcessor及BeanFactoryPostProcessor擴(kuò)展點(diǎn) 41
4.7 ApplicationContext事件 43
第5章 使用注解裝配bean 45
5.1 利用注解進(jìn)行bean的自動掃描管理 45
5.2 組件注解 46
5.3 SpEL表達(dá)式簡介 49
第6章 Spring框架AOP實(shí)現(xiàn) 52
6.1 AOP實(shí)現(xiàn)原理 52
6.2 AOP的核心術(shù)語 55
6.3 使用XML配置裝配AOP 56
6.3.1 <aop:pointcut> 57
6.3.2 <aop:aspect> 60
6.3.3 各類通知的XML配置 62
6.3.4 <aop:advisor> 74
6.4 利用注解配置AOP 75
第7章 Spring框架對Web層及數(shù)據(jù)訪問層的支持 80
7.1 Spring框架對Web層的支持 80
7.2 Spring框架對數(shù)據(jù)訪問層的支持 84
7.3 Spring中的事務(wù)處理 119
7.4 Spring與JNDI 121
第3部分 Spring MVC框架
第8章 Spring MVC框架快速入門 124
8.1 Spring MVC框架的基礎(chǔ)結(jié)構(gòu) 124
8.2 前端控制器DispatcherServlet 125
8.3 頁面控制器Controller 126
8.4 Spring MVC配置文件 127
8.5 第一個(gè)實(shí)例 128
8.6 Spring MVC框架的工作原理 132
第9章 Spring MVC的處理器 135
9.1 處理器類 135
9.2 處理器方法 136
9.2.1 處理器方法的注解 136
9.2.2 處理器方法的參數(shù) 136
9.2.3 處理器方法的返回值 140
第10章 Spring MVC的注解 144
10.1 @Controller注解 144
10.2 @RequestMapping注解 144
10.3 @SessionAttributes注解 147
10.4 @ModelAttribute注解 149
10.5 參數(shù)綁定相關(guān)注解 151
10.5.1 @RequestParam注解 151
10.5.2 @RequestHeader注解 152
10.5.3 @PathVariable注解 152
10.5.4 @CookieValue注解 153
10.6 其他注解 153
10.6.1 @ResponseBody注解 153
10.6.2 @ResponseStatus注解 154
10.6.3 @RequestBody注解 155
第11章 Spring MVC的常用標(biāo)簽 158
11.1 標(biāo)簽概述 158
11.2 常用表單標(biāo)簽 161
11.2.1 form標(biāo)簽 162
11.2.2 input標(biāo)簽 162
11.2.3 password標(biāo)簽 163
11.2.4 checkbox及checkboxes標(biāo)簽 164
11.2.5 radiobutton及
radiobuttons標(biāo)簽 167
11.2.6 select、option及options標(biāo)簽 169
11.2.7 textarea標(biāo)簽 171
11.2.8 hidden標(biāo)簽 171
11.3 errors標(biāo)簽 171
第12章 Spring MVC數(shù)據(jù)轉(zhuǎn)換與校驗(yàn) 174
12.1 概述 174
12.2 數(shù)據(jù)轉(zhuǎn)換 175
12.3 數(shù)據(jù)校驗(yàn) 179
第13章 Spring MVC的國際化 185
13.1 基于瀏覽器的國際化實(shí)現(xiàn)步驟 185
13.2 基于HttpSession的國際化實(shí)現(xiàn)步驟 188
13.3 基于Cookie的國際化實(shí)現(xiàn)步驟 191
第14章 Spring MVC的文件上傳 193
第15章 攔截器 197
第4部分 MyBatis框架
第16章 MyBatis快速入門 203
16.1 MyBatis與Hibernate的區(qū)別 203
16.2 MyBatis結(jié)構(gòu)特性 204
16.3 MyBatis半自動化映射原理 206
16.4 第一個(gè)MyBatis實(shí)例 207
第17章 核心接口及配置文件 211
17.1 SqlSession接口 211
17.2 配置文件 213
第18章 MyBatis框架的增刪改查 218
18.1 insert插入方法 218
18.2 update更新方法 218
18.3 delete刪除方法 219
18.4 selectOne查詢一條記錄 220
18.5 selectList查詢返回泛型對象集合 222
18.6 selectMap查詢封裝Map返回 224
18.7 select實(shí)現(xiàn)ResultHandler接口 225
第19章 MyBatis中的數(shù)據(jù)關(guān)聯(lián) 228
19.1 一對一關(guān)聯(lián) 228
19.2 一對多關(guān)聯(lián) 234
19.3 多對多關(guān)聯(lián) 241
第20章 MyBatis中的動態(tài)SQL 248
20.1 if 248
20.2 choose(when、otherwise) 251
20.3 where 253
20.4 set 254
20.5 foreach 256
20.6 bind 258
第21章 MyBatis中的注解 260
21.1 增刪改查基本操作 260
21.2 一對一、一對多、多對多操作 266
21.3 動態(tài)SQL注解 274
第22章 MyBatis中的高級主題 282
22.1 MyBatis事務(wù)處理 282
22.2 MyBatis緩存機(jī)制 284
第5部分 SSM整合
第23章 Spring和MyBatis整合 288