《JSP+Servlet+Tomcat套用開發從零開始學(第2版)》是2019年清華大學出版社出版的圖書,作者是林龍、劉華貞。
基本介紹
- 書名:JSP+Servlet+Tomcat套用開發從零開始學(第2版)
- 作者:林龍、劉華貞
- ISBN:9787302523352
- 定價:79元
- 出版社:清華大學出版社
- 出版時間:2019.04.01
- 印次:2-1
- 印刷日期:2019.02.28
內容簡介,目錄,
內容簡介
本書全面介紹了JSP開發中涉及的相關技術要點和實戰技巧。全書結構清晰,難度循序漸進,結合豐富的示例使零基礎的讀者能夠熟練掌握JSP的開發、部署以及最佳化。本書分為3篇:第1篇為Java Web基礎開發,內容包括搭建Java Web開發環境、JSP基礎語法、JSP內置對象、Servlet技術、請求與回響、會話管理、Servlet進階API、過濾器、監聽器等;第2篇為Java Web高級開發,內容包括MySQL 8資料庫開發、JSP與Java Bean、EL標籤、JSTL標籤庫、自定義標籤、JDBC詳解、XML概述、資源國際化等;第3篇為Java Web實戰,內容包括兩個典型的系統,即家校通入口網站(JSP+HTML+CSS)、線上購物系統(JSP+Java Bean+MySQL)。
目錄
第1章 搭建Java Web開發環境 1
1.1 Web開發背景知識 1
1.1.1 Web訪問的基本原理 1
1.1.2 超文本傳輸協定 1
1.1.3 靜態網頁和動態網頁 2
1.1.4 Web瀏覽器和Web伺服器 3
1.2 JSP簡介 4
1.2.1 什麼是JSP 4
1.2.2 JSP的優勢 4
1.2.3 JSP的執行順序 5
1.2.4 一個JSP的簡單實例 5
1.3 安裝Java 10環境 6
1.3.1 下載JDK10和配置環境變數 6
1.3.2 下載Intellij IDEA開發工具 8
1.3.3 下載安裝Tomcat 9伺服器 10
1.4 小結 12
1.5 習題 12
第2章 JSP基礎語法:與編寫HTML一樣容易 13
2.1 JSP注釋 13
2.2 JSP聲明 15
2.3 JSP表達式 17
2.4 JSP指令 18
2.4.1 與頁面屬性相關的page指令 18
2.4.2 引入檔案的include指令 19
2.4.3 與標籤相關的taglib指令 21
2.5 JSP動作 24
2.5.1 <jsp:include>動作 24
2.5.2 <jsp:forward>動作 26
2.5.3 <jsp:param>動作 27
2.6 小結 31
2.7 習題 31
第3章 JSP內置對象 32
3.1 request對象 32
3.1.1 request對象的常用方法 32
3.1.2使用request對象接收請求參數 33
3.1.3請求中文亂碼的處理 35
3.1.4獲取請求的頭部信息 36
3.1.5獲取主機和客戶機的信息 38
3.2response對象 39
3.2.1response對象的常用方法 39
3.2.2設定頭信息 39
3.2.3設定頁面重定向 42
3.3session對象 44
3.3.1獲取sessionID 44
3.3.2用戶登錄信息的保存 48
3.4application對象 52
3.4.1application對象的常用方法 53
3.4.2獲取指定頁面的路徑 53
3.4.3設計一個網站計數器 54
3.5out對象 55
3.5.1out對象的常用方法 55
3.5.2out對象的使用示例 55
3.6page對象 57
3.6.1page對象的常用方法 57
3.6.2page對象的使用示例 58
3.7config對象 59
3.7.1config對象的常用方法 59
3.7.2config對象的使用示例 59
3.8小結 60
3.9習題 61
第4章Servlet技術 62
4.1Servlet是什麼 62
4.2Servlet的技術特點 63
4.3Servlet的生命周期 64
4.4編寫和部署Servlet 67
4.4.1編寫Servlet類 67
4.4.2部署Servlet類 71
4.5Servlet與JSP的比較 72
4.6小結 73
4.7習題 74
第5章請求與回響 75
5.1從容器到HttpServlet 75
5.1.1Web容器用來做什麼 75
5.1.2令人茫然的doXXX()方法 77
5.2關於HttpServletRequest對象 78
5.2.1使用getReader()、getInputStream()讀取Body內容 78
5.2.2使用getPart()、getParts()取得上傳檔案 82
5.2.3使用RequestDispatcher調派請求 86
5.3關於HttpServletResponse 91
5.3.1使用getWriter()輸出字元 91
5.3.2使用getOutputStream()輸出二進制字元 94
5.3.3使用sendRedirect()、sendError()方法 95
5.4綜合練習 98
5.4.1實現網站註冊功能 99
5.4.2實現網站登錄功能 104
5.5小結 107
5.6習題 107
第6章會話管理 108
6.1會話管理的基本原理 108
6.1.1使用隱藏域 108
6.1.2使用Cookie 108
6.1.3使用URL重寫 109
6.2HttpSession會話管理 110
6.2.1使用HttpSession管理會話 110
6.2.2HttpSession管理會話的原理 112
6.2.3HttpSession與URL重寫 113
6.2.4HttpSession中禁用Cookie 113
6.2.5HttpSession的生命周期 114
6.2.6HttpSession的有效期 115
6.3HttpSession會話管理實例演示 115
6.4小結 117
6.5習題 117
第7章Servlet進階API、監聽器與過濾器 118
7.1Servlet進階API 118
7.1.1Servlet、ServletConfig與GenericServlet 118
7.1.2使用ServletConfig 121
7.1.3使用ServletContext 124
7.2應用程式事件、監聽器 126
7.2.1ServletContext事件、監聽器 127
7.2.2HttpSession事件監聽器 130
7.2.3HttpServletRequest事件、監聽器 135
7.3過濾器 138
7.3.1過濾器的概念 139
7.3.2實現與設定過濾器 139
7.3.3請求封裝器 141
7.3.4回響封裝器 144
7.4異步處理 153
7.4.1AsyncContext簡介 153
7.4.2模擬伺服器推送 156
7.5Registration動態注入的基礎 160
7.6小結 161
7.7習題 161
第8章MySQL8資料庫開發 162
8.1MySQL資料庫入門 162
8.1.1MySQL的版本特點 162
8.1.2MySQL8的安裝和配置 163
8.2啟動MySQL服務並登錄資料庫 170
8.2.1啟動MySQL服務 170
8.2.2登錄MySQL資料庫 171
8.3MySQL資料庫的基本操作 173
8.3.1創建資料庫 173
8.3.2刪除資料庫 174
8.3.3創建資料庫表 175
8.3.4修改資料庫表 176
8.3.5修改資料庫表的欄位名 177
8.3.6刪除數據表 177
8.4MySQL資料庫的數據管理 178
8.4.1插入數據 178
8.4.2修改數據 179
8.4.3刪除數據 180
8.5小結 180
8.6習題 181
第9章JSP與JavaBean 182
9.1JavaBean的基本概念 182
9.2JSP中使用Bean 183
9.3訪問Bean屬性 185
9.3.1設定屬性:<jsp:setProperty> 185
9.3.2取得屬性:<jsp:getProperty> 190
9.4Bean的作用域 191
9.5用戶登錄驗證 197
9.6DAO設計模式 201
9.6.1DAO設計模式簡介 201
9.6.2DAO命名規則 202
9.6.3DAO開發 202
9.6.4JSP調用DAO 209
9.7小結 212
9.8習題 212
第10章EL標籤:給JSP減負 213
10.1EL標籤語法 213
10.2EL標籤的功能 214
10.3EL標籤的操作符 217
10.4EL標籤的隱含變數 219
10.4.1隱含變數pageScope、requestScope、sessionScope、applicationScope 219
10.4.2隱含變數param、paramValues 219
10.4.3其他變數 220
10.5禁用EL標籤 222
10.5.1在整個Web套用中禁用 222
10.5.2在單個頁面中禁用 223
10.5.3在頁面中禁用個別表達式 223
10.6小結 223
10.7習題 223
第11章JSTL標籤庫 224
11.1JSTL標籤概述 224
11.1.1JSTL的來歷 224
11.1.2一個標籤實例帶你入門 225
11.2JSTL的core標籤庫 226
11.2.1<c:set>標籤與<c:out>標籤 226
11.2.2<c:if>標籤 226
11.2.3<c:choose>標籤、<c:when>標籤、<c:otherwise>標籤 227
11.2.4<c:set>標籤 229
11.2.5<c:forEach>標籤 229
11.2.6<c:forTokens>標籤 230
11.2.7<c:remove>標籤 231
11.2.8<c:catch>標籤 231
11.2.9<c:import>標籤與<c:param>標籤 231
11.2.10<c:redirect>標籤 232
11.2.11<c:url>標籤 232
11.3JSTL的fmt標籤庫 233
11.3.1國際化標籤 233
11.3.2訊息標籤 233
11.3.3數字和日期格式化標籤 236
11.4JSTL的fn標籤庫 239
11.4.1fn:contains()函式與fn:containsIgnoreCase()函式 239
11.4.2fn:startsWith()函式與fn:endsWith()函式 240
11.4.3fn:escapeXml()函式 240
11.4.4fn:indexOf()函式與fn:length()函式 240
11.4.5fn:split()函式與fn:join()函式 241
11.5JSTL的SQL標籤庫 241
11.5.1<sql:setDateSource>標籤 242
11.5.2<sql:query>標籤 242
11.5.3<sql:update>標籤 243
11.5.4<sql:dateParam>標籤與<sql:param>標籤 243
11.5.5<sql:transaction>標籤 245
11.6JSTL的XML標籤庫 246
11.6.1<x:parse>標籤 246
11.6.2<x:out>標籤 247
11.6.3<x:forEach>標籤 247
11.6.4<x:if>標籤 248
11.6.5<x:choose>標籤、<x:when>標籤、<x:otherwise>標籤 248
11.6.6<x:set>標籤 248
11.6.7<x:transform>標籤 249
11.7小結 249
11.8習題 249
第12章自定義標籤 251
12.1編寫自定義標籤 251
12.1.1著作權標籤 251
12.1.2tld標籤庫描述檔案 253
12.1.3TagSupport類簡介 255
12.1.4帶參數的自定義標籤 256
12.1.5帶標籤體的自定義標籤 259
12.1.6多次執行的循環標籤 262
12.1.7帶動態屬性的自定義標籤 264
12.2嵌套的自定義標籤 265
12.2.1實例:表格標籤 265
12.2.2嵌套標籤的配置 267
12.2.3嵌套標籤的運行效果 268
12.3JSP2.X標籤 269
12.4小結 272
12.5習題 272
第13章JDBC詳解 273
13.1JDBC簡介 273
13.1.1查詢實例:列出人員信息 273
13.1.2各種資料庫的連線 276
13.2MySQL的亂碼解決方案 277
13.2.1從控制台修改編碼 277
13.2.2從配置檔案修改編碼 278
13.2.3利用圖形界面工具修改編碼 279
13.2.4在URL中指定編碼方式 279
13.3JDBC基本操作:CRUD 279
13.3.1查詢資料庫 280
13.3.2插入人員信息 280
13.3.3註冊資料庫驅動 285
13.3.4獲取自動插入的ID 285
13.3.5刪除人員信息 285
13.3.6修改人員信息 286
13.3.7使用PreparedStatement 292
13.3.8利用Statement與PreparedStatement批處理SQL 293
13.4結果集的處理 295
13.4.1查詢多個結果集 295
13.4.2可以滾動的結果集 295
13.4.3帶條件的查詢 295
13.4.4ResultSetMetaData元數據 300
13.4.5直接顯示中文列名 301
13.5小結 302
13.6習題 302
第14章XML概述 303
14.1初識XML 303
14.1.1什麼是XML 303
14.1.2XML的用途 304
14.1.3XML的技術架構 304
14.1.4XML開發工具 305
14.2XML基本語法 306
14.3JDK中的XMLAPI 309
14.4最常見的XML解析模型 310
14.4.1DOM解析 310
14.4.2SAX解析 313
14.4.3DOM4j解析 315
14.5XML與Java類映射JAXB 318
14.5.1什麼是XML與Java類映射 318
14.5.2JAXB的工作原理 319
14.5.3將Java對象轉化成XML 319
14.5.4將XML轉化為Java對象 321
14.5.5更為複雜的映射 322
14.6小結 325
14.7習題 326
第15章資源國際化 327
15.1資源國際化簡介 327
15.2資源國際化編程 327
15.2.1資源國際化示例 328
15.2.2資源檔案編碼 329
15.2.3顯示所有Locale代碼 330
15.2.4帶參數的資源 331
15.2.5ResourceBundle類 332
15.2.6Servlet的資源國際化 334
15.2.7顯示所有Locale的數字格式 335
15.2.8顯示全球時間 337
15.3小結 338
15.4習題 339
第16章家校通入口網站 340
16.1網頁首頁的布局 340
16.2導入樣式頁面 341
16.3顯示頁面頭內容 342
16.4用戶登錄頁面 342
16.5幫助頁面 343
16.6網頁主體內容 343
16.7網頁公告內容 345
16.8友情連結頁面 346
16.9網頁底部的版權資訊內容 347
16.10家校通入口網站預覽效果 347
16.11小結 347
第17章線上購物系統 349
17.1系統需求分析 349
17.2系統總體架構 350
17.3資料庫設計 351
17.3.1E-R圖 351
17.3.2數據物理模型 351
17.4系統詳細設計 352
17.4.1系統包的介紹 352
17.4.2系統的關鍵技術 353
17.4.3過濾器 359
17.5系統首頁與公共頁面 360
17.6用戶登錄模組 362
17.7用戶管理模組 363
17.7.1用戶註冊 363
17.7.2用戶信息修改 367
17.7.3用戶信息查看 369
17.7.4用戶密碼修改 370
17.8購物車模組 372
17.8.1添加購物車 372
17.8.2刪除購物車 375
17.8.3查看購物車 375
17.8.4修改購物車 377
17.9商品模組 380
17.9.1查看商品列表 380
17.9.2查看單個商品 384
17.10支付模組 384
17.10.1支付商品 384
17.10.2查看已支付商品 385
17.10.3支付中的頁面 386
17.11小結 388