第1章 Web應用程序簡介 1
1.1 Web應用程序基礎知識 2
1.1.1 關於HTML 2
1.1.2 URL、URN與URI 3
1.1.3 關於HTTP 5
1.1.4 有關URL編碼 9
1.1.5 動態網頁與靜態網頁 11
1.2 Servlet/JSP簡介 13
1.2.1 何謂Web容器 13
1.2.2 Servlet與JSP的關係 15
1.2.3 關於MVC/Model 2 18
1.2.4 Java EE簡介 21
1.3 重點復習 22
1.4 課後練習 23
第2章 編寫與設置Servlet 25
2.1 第一個Servlet 26
2.1.1 準備開發環境 26
2.1.2 第一個Servlet程序 28
2.2 在HelloServlet之後 31
2.2.1 關於HttpServlet 31
2.2.2 使用@WebServlet 33
2.2.3 使用web.xml 34
2.2.4 文件組織與部署 36
2.3 進階部署設置 37
2.3.1 URL模式設置 38
2.3.2 Web目錄結構 40
2.3.3 使用web-fragment.xml 42
2.4 重點復習 45
2.5 課後練習 46
第3章 請求與響應 48
3.1 從容器到HttpServlet 49
3.1.1 Web容器做瞭什麼 49
3.1.2 doXXX()方法 51
3.2 關於HttpServletRequest 54
3.2.1 處理請求參數與標頭 54
3.2.2 請求參數編碼處理 57
3.2.3 getReader()、getInputStream()
讀取Body內容 60
3.2.4 getPart()、getParts()取得上傳
文件 64
3.2.5 使用RequestDispatcher調派
請求 69
3.3 關於HttpServletResponse 75
3.3.1 設置響應標頭、緩衝區 76
3.3.2 使用getWriter()輸齣字符 77
3.3.3 使用getOutputStream()輸齣
二進製字符 80
3.3.4 使用sendRedirect()、
sendError() 82
3.4 綜閤練習/微博 84
3.4.1 微博應用程序功能概述 84
3.4.2 實現會員注冊功能 86
3.4.3 實現會員登錄功能 90
3.5 重點復習 92
3.6 課後練習 93
第4章 會話管理 96
4.1 會話管理基本原理 97
4.1.1 使用隱藏域 97
4.1.2 使用Cookie 100
4.1.3 使用URL重寫 104
4.2 HttpSession會話管理 107
4.2.1 使用HttpSession 107
4.2.2 HttpSession會話管理
原理 111
4.2.3 HttpSession與URL重寫 113
4.3 綜閤練習/微博 115
4.3.1 修改微博應用程序 116
4.3.2 新增與刪除信息 117
4.3.3 會員網頁顯示信息 120
4.4 重點復習 122
4.5 課後練習 123
第5章 Servlet進階API、過濾器
與監聽器 125
5.1 Servlet進階API 126
5.1.1 Servlet、ServletConfig與GenericServlet 126
5.1.2 使用ServletConfig 128
5.1.3 使用ServletContext 131
5.2 應用程序事件、監聽器 134
5.2.1 ServletContext事件、
監聽器 134
5.2.2 HttpSession事件、
監聽器 137
5.2.3 HttpServletRequest事件、
監聽器 144
5.3 過濾器 145
5.3.1 過濾器的概念 145
5.3.2 實現與設置過濾器 147
5.3.3 請求封裝器 152
5.3.4 響應封裝器 157
5.4 異步處理 161
5.4.1 AsyncContext簡介 161
5.4.2 模擬服務器推播 164
5.4.3 更多AsyncContext
細節 167
5.5 綜閤練習/微博 168
5.5.1 創建UserService 168
5.5.2 設置過濾器 174
5.5.3 重構微博 175
5.6 重點復習 180
5.7 課後練習 182
第6章 使用JSP 186
6.1 從JSP到Servlet 187
6.1.1 JSP生命周期 187
6.1.2 Servlet至JSP的簡單
轉換 190
6.1.3 指示元素 194
6.1.4 聲明、Scriptlet與錶達式
元素 198
6.1.5 注釋元素 202
6.1.6 隱式對象 203
6.1.7 錯誤處理 205
6.2 標準標簽 210
6.2.1 <jsp:include>、<jsp:forward>
標簽 210
6.2.2 <jsp:useBean>、<jsp:setProperty>
與<jsp:getProperty>簡介 211
6.2.3 深入<jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> 214
6.2.4 談談Model 1 218
6.2.5 XML格式標簽 220
6.3 錶達式語言(EL) 221
6.3.1 EL簡介 221
6.3.2 使用EL取得屬性 223
6.3.3 EL隱式對象 226
6.3.4 EL運算符 227
6.3.5 自定義EL函數 228
6.4 綜閤練習/微博 230
6.4.1 改用JSP實現視圖 230
6.4.2 重構UserService
與member.jsp 234
6.4.3 創建register.jsp、index.jsp、
user.jsp 240
6.5 重點復習 245
6.6 課後練習 247
第7章 使用JSTL 249
7.1 JSTL簡介 250
7.2 核心標簽庫 252
7.2.1 流程處理標簽 252
7.2.2 錯誤處理標簽 255
7.2.3 網頁導入、重定嚮、URL
處理標簽 257
7.2.4 屬性處理與輸齣標簽 258
7.3 I18N兼容格式標簽庫 261
7.3.1 I18N基礎 261
7.3.2 信息標簽 264
7.3.3 地區標簽 267
7.3.4 格式標簽 272
7.4 XML標簽庫 275
7.4.1 XPath、XSLT基礎 276
7.4.2 解析、設置與輸齣
標簽 279
7.4.3 流程處理標簽 280
7.4.4 文件轉換標簽 281
7.5 函數標簽庫 283
7.6 綜閤練習/微博 284
7.6.1 修改register.jsp 285
7.6.2 修改member.jsp 285
7.6.3 修改user.jsp 287
7.7 重點復習 288
7.8 課後練習 290
第8章 自定義標簽 293
8.1 Tag File自定義標簽 294
8.1.1 Tag File簡介 294
8.1.2 處理標簽屬性與Body 297
8.1.3 TLD文件 299
8.2 Simple Tag自定義標簽 301
8.2.1 Simple Tag簡介 301
8.2.2 瞭解API架構與生命
周期 304
8.2.3 處理標簽屬性與Body 306
8.2.4 與父標簽溝通 310
8.2.5 TLD文件 314
8.3 Tag自定義標簽 315
8.3.1 Tag簡介 315
8.3.2 瞭解架構與生命周期 317
8.3.3 重復執行標簽Body 319
8.3.4 處理Body運行結果 321
8.3.5 與父標簽溝通 324
8.4 綜閤練習/微博 327
8.4.1 實現首頁最新信息 327
8.4.2 自定義Blahs標簽 330
8.5 重點復習 332
8.6 課後練習 334
第9章 整閤數據庫 338
9.1 JDBC入門 339
9.1.1 JDBC簡介 339
9.1.2 連接數據庫 344
9.1.3 使用Statement、
ResultSet 350
9.1.4 使用PreparedStatement、CallableStatement 355
9.2 JDBC進階 359
9.2.1 使用DataSource取得
連接 359
9.2.2 使用ResultSet捲動、更新
數據 362
9.2.3 批次更新 364
9.2.4 Blob與Clob 366
9.2.5 事務簡介 374
9.2.6 metadata簡介 381
9.2.7 RowSet簡介 384
9.3 使用SQL標簽庫 390
9.3.1 數據源、查詢標簽 390
9.3.2 更新、參數、事務標簽 391
9.4 綜閤練習/微博 392
9.4.1 重構/使用DAO 393
9.4.2 使用JDBC實現DAO 395
9.4.3 設置JNDI部署描述 400
9.5 重點復習 401
9.6 課後練習 402
第10章 Web容器安全管理 404
10.1 瞭解與實現Web容器安全
管理 405
10.1.1 Java EE安全基本概念 405
10.1.2 聲明式基本身份驗證 408
10.1.3 容器基本身份驗證
原理 413
10.1.4 聲明式窗體驗證 414
10.1.5 容器窗體驗證原理 415
10.1.6 使用HTTPS保護
數據 416
10.1.7 編程式安全管理 419
10.1.8 標注訪問控製 422
10.2 綜閤練習/微博 424
10.2.1 使用容器窗體驗證 424
10.2.2 設置DataSourceRealm 426
10.3 重點復習 429
10.4 課後練習 430
第11章 JavaMail入門 432
11.1 使用JavaMail 433
11.1.1 傳送純文字郵件 433
11.1.2 發送多重內容郵件 436
11.2 綜閤練習/微博 440
11.2.1 實現取迴密碼功能 440
11.2.2 接收重送密碼請求 445
11.3 重點復習 447
11.4 課後練習 447
第12章 從模式到框架 449
12.1 認識設計模式 450
12.1.1 Template Method模式(Gof
設計模式) 450
12.1.2 Intercepting Filter模式(Java
EE設計模式) 451
12.1.3 Model-View-Controller模式
(架構模式) 452
12.2 重構、模式與框架 453
12.2.1 Business Delegate
模式 453
12.2.2 Service Locator模式 454
12.2.3 Transfer Object模式 455
12.2.4 Front Controller模式 455
12.2.5 庫與框架 456
12.3 重點復習 457
12.5 課後練習 459
附錄A 如何使用本書項目 460
附錄B MySQL入門 463
· · · · · · (
收起)