本書講述Java EB的規(guī)范、技術(shù)及開發(fā)模型,主要包括Java EE規(guī)范、應(yīng)用程序分層模型及其技術(shù);還介紹了一些企業(yè)開發(fā)的滿足Java EE規(guī)范的流行框架,包括持久層的Mybatis、事務(wù)管理層的Spring和表示層的Spring MVC,幫助讀者運(yùn)用Java EE技術(shù)及主流框架實(shí)現(xiàn)企業(yè)級應(yīng)用程序的開發(fā)。
目? ? 錄
第1章? Java EE簡介 1
1.1? Java EE的產(chǎn)生及定義 1
1.1.1? Java的產(chǎn)生 1
1.1.2? Java EE的定義 3
1.2? Java EE臺的體系結(jié)構(gòu) 5
1.3? Java EE 8的新特性 5
1.3.1? 新增加的技術(shù) 6
1.3.2? 改進(jìn)的技術(shù) 9
1.4? Java EE的編程思想 18
1.5? Java EE容器及其服務(wù) 19
1.5.1? 容器類型 19
1.5.2? 容器服務(wù) 20
1.6? Java EE組件 20
1.6.1? Java EE客戶端 21
1.6.2? Web組件 22
1.6.3? 業(yè)務(wù)組件 22
1.7? Java EE標(biāo)準(zhǔn)服務(wù) 23
1.7.1? HTTP 23
1.7.2? HTTPS 23
1.7.3? JavaTM事務(wù)API 23
1.7.4? RMI-IIOP 23
1.7.5? Java IDL 24
1.7.6? JDBCTM API 24
1.7.7? JavaTM持久化API 24
1.7.8? JavaTM消息服務(wù) 24
1.7.9? JavaTM命名和目錄界面 24
1.7.10? JavaMailTM 24
1.7.11? JavaBeansTM激活框架 25
1.7.12? XML處理 25
1.7.13? Java EE連接器體系結(jié)構(gòu) 25
1.7.14? 安全服務(wù) 25
1.7.15? Web服務(wù) 26
1.7.16? 并發(fā)工具 26
1.7.17? 批處理 26
1.7.18? 管理 27
1.7.19? 部署 27
1.8? 企業(yè)級應(yīng)用程序體系結(jié)構(gòu) 27
1.8.1? C/S兩層結(jié)構(gòu) 27
1.8.2? B/S三層結(jié)構(gòu) 27
1.8.3? 多層結(jié)構(gòu) 28
1.8.4? Java EE的分層模型與框架 29
1.9? 集成環(huán)境及配置簡介 30
1.9.1? 集成環(huán)境簡介 30
1.9.2? 環(huán)境配置 33
1.9.3? 關(guān)于測試 36
1.10? 本章小結(jié) 36
習(xí)題 36
第2章? MyBatis入門 37
2.1? JDK動態(tài)代理 37
2.1.1? JDK動態(tài)代理的基本原理及鏈?zhǔn)浇Y(jié)構(gòu) 37
2.1.2? 利用動態(tài)代理增強(qiáng)對象功能 41
2.2? 在Eclipse中創(chuàng)建一個Java Web工程 44
2.2.1? 設(shè)置工程 44
2.2.2? 設(shè)置Maven的倉庫地址 45
2.2.3? 在Eclipse中配置Maven 46
2.2.4? 利用Maven創(chuàng)建Java Web工程 47
2.3? 安裝ERMaster插件及繪制ER圖 49
2.3.1? 安裝ERMaster 49
2.3.2? 設(shè)計ER圖并生成數(shù)據(jù)庫中的表 51
2.4? 在Java Web工程中使用MyBatis 53
2.4.1? 在Maven工程中配置MyBatis 53
2.4.2? 使用mybatis-config.xml配置MyBatis框架 55
2.4.3? 創(chuàng)建實(shí)體類和DAO接口 55
2.4.4? XML映射器文件 56
2.4.5? 編寫一個輔助的工具類 57
2.4.6? 編寫測試用的Servlet和網(wǎng)頁 58
2.5? 理解MyBatis中的Mapper 61
2.5.1? 創(chuàng)建一個實(shí)體類User 62
2.5.2? 創(chuàng)建一個DAO接口(類似Mapper) 62
2.5.3? 創(chuàng)建DAO接口的通用實(shí)現(xiàn)類 62
2.5.4? 主程序類 64
2.6? XML映射器的基本用法 65
2.6.1? 創(chuàng)建實(shí)體類Course及其數(shù)據(jù)表 65
2.6.2? 創(chuàng)建DAO接口和Mapper映射文件 66
2.6.3?
2.6.4? 、、標(biāo)簽 69
2.7? MyBatis的動態(tài)SQL語句 73
2.7.1? 標(biāo)簽 74
2.7.2? 、、標(biāo)簽 75
2.7.3? 、標(biāo)簽 78
2.7.4? 、標(biāo)簽 79
2.7.5? 標(biāo)簽 80
2.8? 在Eclipse中使用MyBatis的代碼生成器 83
2.8.1? 在Eclipse中安裝MyBatis Generator插件 83
2.8.2? 創(chuàng)建MyBatis Generator的配置文件 84
2.8.3? 編輯MyBatis Generator的配置文件 84
2.8.4? 運(yùn)行 MyBatis Generator及相關(guān)類介紹 86
2.8.5? 測試自動生成的Mapper 89
2.9? MyBatis中的關(guān)聯(lián)映射 91
2.9.1? 一對多的關(guān)系(單條SQL語句) 91
2.9.2? 一對多的關(guān)系(多條SQL語句) 97
2.9.3? 一對一(多對一)關(guān)聯(lián)關(guān)系的配置 99
2.10? MyBatis的緩存機(jī)制簡介 106
2.10.1? 一級緩存 106
2.10.2? 二級緩存 109
2.10.3? 一、二級緩存使用注意事項 118
2.11? 本章小結(jié) 119
習(xí)題 119
第3章? Spring入門 120
3.1? Spring IoC簡介 120
3.1.1? 初步認(rèn)識Spring IoC 120
3.1.2? Spring IoC容器創(chuàng)建Bean的過程 123
3.2? Spring中Bean的裝配 131
3.2.1? 利用XML裝配Bean 131
3.2.2? 使用命名空間簡化XML配置 140
3.2.3? 在Java代碼中利用注解裝配 145
3.2.4? 混合裝配 151
3.2.5? Spring表達(dá)式語言簡介 155
3.3? Spring AOP簡介 158
3.3.1? AOP基本概念 158
3.3.2? 編寫Aspect 160
3.3.3? 編寫切點(diǎn)表達(dá)式 162
3.3.4? 配置AOP 164
3.3.5? 利用Aspect為Bean增加新的功能 171
3.3.6? 其他AspectJ指示器 173
3.4? Spring中的JDBC編程 181
3.4.1? JDBC使用方法簡介 181
3.4.2? Spring中JDBC編程的常見方式 182
3.4.3? 使用JdbcTemplate操作數(shù)據(jù)庫 182
3.4.4? 整合Spring和MyBatis操作數(shù)據(jù)庫 189
3.5? Spring 中的事務(wù)管理 194
3.5.1? Spring中事務(wù)管理的主要接口 194
3.5.2? SQL中的隔離級別簡介 195
3.5.3? Spring中的事務(wù)傳播方式 196
3.5.4? Spring中的聲明式事務(wù)管理 197
3.6? 本章小結(jié) 209
習(xí)題 209
第4章? Spring MVC 210
4.1? Spring MVC入門 210
4.1.1? Spring MVC中的基本處理流程 210
4.1.2? Spring MVC的簡單應(yīng)用 212
4.1.3? 常用配置信息 221
4.2? 控制器的實(shí)現(xiàn) 222
4.2.1? 控制器的格式 223
4.2.2? 請求映射的編寫 223
4.2.3? 保存數(shù)據(jù)到模型 224
4.2.4? 處理方法的形參類型 228
4.2.5? 處理方法的參數(shù)注解 232
4.2.6? 處理方法的返回值 242
4.2.7? 數(shù)據(jù)綁定 246
4.3? Spring MVC的高級應(yīng)用 252
4.3.1? 異常處理 252
4.3.2? HTTP消息轉(zhuǎn)換 265
4.3.3? 視圖與視圖解析器 276
4.3.4? 攔截器 284
4.3.5? 國際化 290
4.3.6? multipart表單與文件上傳 299
4.4? 本章小結(jié) 306
習(xí)題 306