內容簡介
21天學通java web開發(第2版)(含dvd光碟1張)》是java web開發的基礎教程,針對沒有接觸過或還不是特別熟悉java web開發的讀者,詳細介紹了java web開發的基礎概念及技術要點。全書分為六篇共21章內容,第一篇為java web基礎篇,介紹了執行環境和開發環境的搭建及jsp的語法基礎。第二篇為jsp 2.0開發篇,介紹了jsp指令元素、jsp動作元素、jsp內置對象、jsp和javabean等內容。第三篇為servlet開發篇,介紹了servlet的基礎知識及servlet監聽器,以及過濾器的開發等內容。第四篇為使用設計模式篇,介紹了dao和mvc這兩個經典設計模式。第五篇為框架技術篇,介紹了struts 2、hibernate、spring這三個目前非常流行的輕量級java web開發框架。第六篇為項目實戰篇,通過整合前面的三個框架,開發一套用戶管理系統。
《21天學通java web開發(第2版)(含dvd光碟1張)》適合java web開發技術的初學者,也可作為大、中院校學生和培訓班的教材。對於有一定java web開發技術基礎,但還需要進一步學習的人員,本書也有較大的參考價值。
本書附贈dvd光碟1張,內容包括超大容量手把手教學視頻、電子教案(ppt)、原始碼、職場面試法寶等。
目錄
《21天學通java web開發(第2版)(含dvd光碟1張)》
第一篇 java web基礎篇
第1章 搭建開發環境 21
1.1 下載並安裝jdk 21
1.1.1 下載jdk 21
1.1.2 安裝jdk 23
1.1.3 配置環境變數 24
1.1.4 一個簡單的java程式 25
1.2 下載並安裝tomcat 26
1.2.1 下載tomcat 26
1.2.2 安裝tomcat 26
1.2.3 配置虛擬目錄 28
1.2.4 一個簡單的jsp程式 28
1.3 下載並安裝eclipse 29
1.3.1 下載eclipse 29
1.3.2 安裝eclipse 29
1.4 下載並安裝myeclipse 30
1.4.1 下載myeclipse 30
1.4.2 安裝myeclipse 30
1.5 使用myeclipse進行web開發 31
.1.5.1 使用myeclipse新建web項目 31
1.5.2 myeclipse中新建jsp頁面 32
1.5.3 myeclipse整合tomcat 33
1.5.4 myeclipse部署項目 35
1.6 小結 36
第2章 jsp的基礎語法 37
2.1 jsp簡介 37
2.2 jsp運行機制 38
2.3 jsp腳本元素 40
2.3.1 jsp聲明語句 40
2.3.2 jsp scriptlets 40
2.3.3 jsp表達式 41
2.4 注釋 42
2.5 綜合練習 44
2.6 小結 45
2.7 習題 45
第二篇 jsp 2.0開發篇
第3章 jsp指令元素 47
3.1 page指令 47
3.1.1 language屬性 47
3.1.2 extends屬性 48
3.1.3 import屬性 48
3.1.4 session屬性 49
3.1.5 buffer屬性 49
3.1.6 autoflush屬性 49
3.1.7 isthreadsafe屬性 50
3.1.8 info屬性 50
3.1.9 errorpage屬性 50
3.1.10 iserrorpage屬性 51
3.1.11 contenttype屬性 51
3.1.12 pageencoding屬性 52
3.1.13 iselignored屬性 52
3.2 include指令 52
3.2.1 包含文本檔案 53
3.2.2 包含html檔案 55
3.2.3 包含jsp檔案 56
3.3 taglib指令 56
3.4 綜合練習 57
3.5 小結 59
3.6 習題 59
第4章 jsp動作元素 60
4.1 jsp動作元素分類 60
4.2 <jsp:include>動作元素 60
4.2.1 使用<jsp:include>動作元素包含靜態的檔案 61
4.2.2 使用<jsp:include>動作元素包含動態的檔案 61
4.2.3 <jsp:include>和<%@ include%>的區別 62
4.3 <jsp:forward>動作元素 64
4.3.1 使用<jsp: forward >動作元素實現頁面跳轉 64
4.3.2 跳轉執行流程 65
4.4 <jsp:param>動作元素 66
4.4.1 <jsp:include>動作元素搭配<jsp:param>動作元素 66
4.4.2 <jsp:forward>動作元素搭配<jsp:param>動作元素 68
4.5 <jsp:plugin>、<jsp:params>和<jsp:fallback> 70
4.5.1 <jsp:plugin>動作元素 71
4.5.2 <jsp:params>動作元素 72
4.5.3 <jsp:fallback>動作元素 73
4.6 綜合練習 74
4.7 小結 75
4.8 習題 75
第5章 jsp內置對象 77
5.1 jsp內置對象分類 77
5.2 屬性保存範圍 78
5.2.1 page範圍 78
5.2.2 request範圍 79
5.2.3 session範圍 81
5.2.4 application範圍 83
5.2.5 移除屬性 84
5.3 request對象 85
5.3.1 獲得客戶端請求參數 85
5.3.2 獲得所有的參數名稱 87
5.3.3 獲得參數的所有參數值 89
5.3.4 獲得封裝所有參數值的map 90
5.3.5 request對象的其他方法 91
5.4 response對象 92
5.4.1 實現頁面跳轉 92
5.4.2 實現頁面自動刷新 93
5.4.3 實現頁面自動跳轉 94
5.5 out對象 94
5.5.1 使用out對象進行頁面輸出 95
5.5.2 使用out對象求得緩衝區使用大小 96
5.6 session對象 96
5.6.1 設定並獲得session生命周期 97
5.6.2 獲得session的其他信息 97
5.7 application對象 98
5.7.1 通過application對象獲得伺服器版本 99
5.7.2 通過application對象獲得其他信息 100
5.8 pagecontext對象 100
5.9 page對象 102
5.10 config對象 103
5.11 exception對象 103
5.12 綜合練習 104
5.13 小結 106
5.14 習題 107
第6章 資料庫操作 108
6.1 下載並安裝mysql 108
6.1.1 下載mysql 108
6.1.2 安裝mysql 109
6.2 jdbc驅動程式 109
6.2.1 下載並安裝mysql的jdbc驅動程式 109
6.2.2 載入jdbc驅動程式 110
6.3 jdbc連線mysql資料庫 111
6.3.1 創建資料庫和數據表 111
6.3.2 連線mysql資料庫 112
6.4 語句對象statement 113
6.4.1 添加記錄 114
6.4.2 更新記錄 115
6.4.3 刪除記錄 116
6.5 resultset結果集 117
6.5.1 獲得所有記錄 117
6.5.2 獲得指定欄位記錄 119
6.5.3 獲得指定起始位置和條數的記錄 120
6.6 資料庫的關閉操作 121
6.7 預處理語句對象preparedstatement 123
6.7.1 添加記錄 123
6.7.2 更新記錄 124
6.7.3 刪除記錄 126
6.7.4 獲得指定記錄 127
6.8 綜合練習 129
6.9 小結 131
6.10 習題 131
第7章 jsp和javabean 133
7.1 javabean簡單使用 133
7.1.1 javabean簡介 133
7.1.2 定義javabean 133
7.1.3 在jsp中調用javabean 134
7.2 設定javabean屬性 135
7.2.1 根據所有參數設定javabean屬性 135
7.2.2 根據指定參數設定javabean屬性 137
7.2.3 根據指定參數設定指定javabean屬性 138
7.2.4 設定指定javabean屬性為指定值 140
7.3 獲得javabean屬性 141
7.4 設定javabean的範圍 142
7.4.1 設定page範圍的javabean 142
7.4.2 設定request範圍的javabean 143
7.4.3 設定session範圍的javabean 144
7.4.4 設定application範圍的javabean 146
7.5 移除javabean 147
7.6 綜合練習 148
7.7 小結 150
7.8 習題 150
第8章 el表達式 152
8.1 el運算符 152
8.1.1 算術運算符 152
8.1.2 關係運算符 153
8.1.3 邏輯運算符 154
8.1.4 條件運算符 156
8.1.5 驗證運算符 157
8.1.6 括弧運算符及運算符的優先權 158
8.2 el內置對象 159
8.2.1 .與[ ]運算符 159
8.2.2 與存儲有關的內置對象 160
8.2.3 與輸入有關的內置對象 161
8.2.4 cookie內置對象 162
8.2.5 header內置對象 164
8.2.6 initparam內置對象 164
8.2.7 pagecontext內置對象 165
8.3 el存取器 166
8.3.1 使用存取器讀取javabean中的數據 166
8.3.2 使用存取器讀取map中的數據 169
8.3.3 使用存取器讀取數組中的數據 170
8.3.4 存取器複雜套用 171
8.4 綜合練習 172
8.5 小結 174
8.6 習題 174
第9章 jstl標籤庫 176
9.1 jstl核心標籤 176
9.1.1 <c:set>標籤 176
9.1.2 <c:out>標籤 176
9.1.3 <c:remove>標籤 177
9.1.4 <c:if>標籤 178
9.1.5 <c:choose>、<c:when>、<c:otherwise>標籤 178
9.1.6 <c:foreach>標籤 179
9.1.7 <c:fortokens>標籤 179
9.1.8 <c:import>標籤 180
9.1.9 <c:param>標籤 180
9.1.10 <c:url>標籤 181
9.1.11 <c:redirect>標籤 181
9.2 資料庫標籤庫 181
9.2.1 <sql:setdatasource>標籤 182
9.2.2 <sql:update>標籤 182
9.2.3 <sql:query>標籤 183
9.2.4 <sql:param>和<sql:dateparam>標籤 185
9.2.5 <sql:transaction >標籤 186
9.3 i18n格式化標籤庫 187
9.3.1 <fmt: formatnumber>標籤 187
9.3.2 <fmt: parsenumber>標籤 189
9.3.3 <fmt: formatdate>標籤 189
9.3.4 <fmt: parsedate>標籤 190
9.3.5 <fmt: settimezone>標籤 190
9.3.6 <fmt: timezone>標籤 191
9.3.7 <fmt: setlocale>標籤 191
9.3.8 <fmt: requestencoding>標籤 192
9.3.9 <fmt: setbundle>標籤 192
9.3.10 <fmt: message>標籤 192
9.3.11 <fmt: param> 193
9.3.12 <fmt: bundle> 193
9.4 xml標籤庫 193
9.4.1 下載並安裝進行xml操作必需的jar檔案 193
9.4.2 <x:parse>標籤 194
9.4.3 <x:out>標籤 195
9.4.4 <x:set>標籤 196
9.4.5 <x:if>標籤 196
9.4.6 <x:choose>標籤 197
9.4.7 <x:foreach>標籤 198
9.5 綜合練習 198
9.6 小結 199
9.7 習題 199
第三篇 servlet開發篇
第10章 servlet開發基礎 201
10.1 servlet基礎 201
10.1.1 servlet簡介 201
10.1.2 第一個servlet程式 201
10.1.3 servlet生命周期 202
10.2 httpservlet常用方法 203
10.2.1 doget方法 203
10.2.2 dopost方法 205
10.2.3 service方法 207
10.3 servlet常用接口 208
10.3.1 httpservletrequest接口 208
10.3.2 httpservletresponse接口 210
10.3.3 httpsession接口 211
10.3.4 servletcontext接口 213
10.4 綜合練習 215
10.5 小結 216
10.6 習題 216
第11章 filter開發 218
11.1 filter基礎 218
11.1.1 filter簡介 218
11.1.2 第一個filter程式 218
11.1.3 filter生命周期 220
11.2 常用filter 221
11.2.1 非法文字過濾器 221
11.2.2 字元編碼過濾器 223
11.2.3 登錄驗證過濾器 225
11.3 綜合練習 228
11.4 小結 229
11.5 習題 229
第12章 listener開發 231
12.1 listener簡介 231
12.2 servletcontext listener 231
12.2.1 servletcontextlistener接口 231
12.2.2 servletcontextattributelistener接口 232
12.3 httpsession listener 234
12.3.1 httpsessionlistener接口 234
12.3.2 httpsessionattributelistener接口 235
12.4 綜合練習 237
12.5 小結 240
12.6 習題 240
第四篇 使用設計模式篇
第13章 dao設計模式 241
13.1 dao簡介 241
13.2 dao各部分詳解 241
13.2.1 資料庫連線類 241
13.2.2 vo類 242
13.2.3 dao接口 243
13.2.4 dao實現類 244
13.2.5 dao工廠類 246
13.3 使用dao完成資料庫操作 247
13.3.1 添加記錄 247
13.3.2 更新記錄 248
13.3.3 刪除記錄 249
13.3.4 按id查詢記錄 249
13.4 綜合練習 250
13.5 小結 251
13.6 習題 251
第14章 mvc設計模式 253
14.1 mvc簡介 253
14.2 model 1和model 2 254
14.3 使用mvc模式改進用戶登錄案例 255
14.3.1 用戶登錄頁面 255
14.3.2 用戶登錄成功和失敗頁面 256
14.3.3 業務邏輯組件 257
14.3.4 servlet控制器 258
14.4 綜合練習 259
14.5 小結 261
14.6 習題 261
第五篇 框架技術篇
第15章 struts 2基礎 262
15.1 struts 2簡介 262
15.2 struts 2框架的下載和安裝 263
15.2.1 下載struts 2框架 263
15.2.2 安裝struts 2框架 264
15.3 基於struts 2框架實現登錄案例 265
15.3.1 準備工作 265
15.3.2 新建控制類action 265
15.3.3 配置action 266
15.3.4 程式執行流程 267
15.4 改進控制器 268
15.4.1 實現action接口 268
15.4.2 配置action 269
15.5 完成輸入校驗 270
15.5.1 使用struts 2標籤庫簡化表單 270
15.5.2 繼承actionsupport完成輸入校驗 271
15.6 程式國際化 274
15.6.1 輸出中文的校驗錯誤信息 274
15.6.2 國際化資源檔案 275
15.6.3 載入資源檔案 276
15.6.4 輸出國際化信息 277
15.6.5 輸出國際化的校驗錯誤信息 278
15.7 綜合練習 279
15.8 小結 280
15.9 習題 281
第16章 struts 2高級套用 283
16.1 struts 2內建的類型轉換器 283
16.1.1 內建轉換器介紹 283
16.1.2 基本數據類型轉換器 283
16.1.3 基本數據類型的封裝類轉換器 287
16.1.4 數組類型轉換器 289
16.1.5 集合類型轉換器 291
16.2 伺服器端校驗 292
16.2.1 伺服器端校驗的重要性 292
16.2.2 完成伺服器端輸入校驗 293
16.2.3 使頁面保留提交信息 297
16.2.4 使用addfielderror來添加錯誤信息 299
16.2.5 輸入校驗與類型轉換關係 302
16.3 使用校驗框架完成輸入校驗 303
16.3.1 完成輸入校驗 303
16.3.2 增加客戶端校驗 308
16.3.3 國際化提示信息 310
16.3.4 客戶端校驗與國際化問題 312
16.3.5 校驗短路 315
16.3.6 校驗規則檔案搜尋規則 317
16.4 綜合練習 318
16.5 小結 318
16.6 習題 318
第17章 持久化框架hibernate 320
17.1 初涉hibernate 320
17.1.1 orm簡介 320
17.1.2 hibernate框架的優勢 321
17.1.3 下載和安裝hibernate 321
17.1.4 hibernate架構概述 321
17.2 hibernate的配置和相關類 323
17.2.1 configuration類 323
17.2.2 hibernate配置檔案 323
17.2.3 sessionfactory類 324
17.3 hibernate中的對象 324
17.3.1 對象在hibernate中的狀態 325
17.3.2 持久化類 326
17.3.3 對象識別 327
17.4 hibernate開發 328
17.4.1 創建hibernate配置檔案 328
17.4.2 創建持久化類 329
17.4.3 創建對象關係映射檔案 329
17.4.4 創建資料庫表 330
17.4.5 插入數據 331
17.4.6 更新數據 332
17.4.7 刪除數據 333
17.4.8 查詢數據 335
17.4.9 使用hibernate工具類 337
17.5 綜合練習 338
17.6 小結 338
17.7 習題 338
第18章 struts 2整合hibernate開發 340
18.1 struts 2和hibernate的整合策略 340
18.2 持久層設計 341
18.2.1 dao接口 341
18.2.2 dao實現類 341
18.2.3 dao工廠類 343
18.3 業務邏輯組件 343
18.3.1 業務邏輯組件接口 344
18.3.2 業務邏輯組件實現類 344
18.3.3 業務邏輯組件工廠類 345
18.4 整合套用 346
18.4.1 查詢所有產品 346
18.4.2 添加產品 348
18.4.3 刪除產品 349
18.4.4 更新產品 351
18.5 小結 353
18.6 習題 353
第19章 spring開發 354
19.1 初探spring 354
19.1.1 spring簡介 354
19.1.2 下載和安裝spring 355
19.1.3 spring的ioc套用 356
19.2 spring的依賴注入 359
19.2.1 通過set方法注入依賴 359
19.2.2 引用其他的bean 361
19.2.3 使用構造函式注入依賴 363
19.3 spring的自動裝配 365
19.3.1 自動裝配分類 365
19.3.2 byname自動裝配 365
19.3.3 bytype自動裝配 366
19.3.4 constructor自動裝配 366
19.4 spring核心理論:面向切面編程介紹 367
19.4.1 面向切面編程基礎知識 367
19.4.2 在spring中創建前置通知 368
19.4.3 在spring中創建後置通知 370
19.4.4 在spring中創建攔截通知 372
19.4.5 在spring中創建異常通知 374
19.4.6 使用spring靜態切入點 376
19.5 綜合練習 376
19.6 小結 378
19.7 習題 378
第20章 struts 2整合spring開發 380
20.1 安裝spring外掛程式完成整合 380
20.2 整合策略 380
20.3 整合spring完成登錄案例 382
20.3.1 修改控制器action及配置 382
20.3.2 依賴注入業務邏輯組件 383
20.4 整合spring完成產品管理案例 383
20.4.1 使用spring容器管理sessionfactory 383
20.4.2 使用hibernatetemplate進行資料庫操作 384
20.4.3 依賴注入dao組件 385
20.4.4 依賴注入業務邏輯組件 386
20.4.5 完成action配置 389
20.5 小結 389
20.6 習題 390
第六篇 項目實戰篇
第21章 ssh整合開發用戶 管理系統 391
21.1 系統分析 391
21.1.1 套用背景及系統功能介紹 391
21.1.2 系統結構 391
21.1.3 系統功能模組 392
21.2 hibernate持久層設計 392
21.2.1 創建持久化po類 392
21.2.2 創建映射檔案 393
21.3 dao層設計 394
21.3.1 spring管理sessionfactory 394
21.3.2 創建dao接口 395
21.3.3 創建dao實現類 395
21.3.4 配置dao組件 396
21.4 業務邏輯層設計 396
21.4.1 創建業務邏輯組件接口 396
21.4.2 創建業務邏輯組件實現類 396
21.4.3 配置業務邏輯組件 397
21.5 完成查看所有用戶信息模組 398
21.5.1 整合struts 2和spring 398
21.5.2 創建查看全部用戶信息控制器 398
21.5.3 創建全部用戶信息顯示頁 399
21.5.4 配置查看全部用戶信息控制器 399
21.5.5 測試查看所有用戶信息 400
21.6 完成查看用戶詳細信息模組 400
21.6.1 創建查看用戶詳細信息控制器 400
21.6.2 創建查看用戶詳細信息顯示頁 401
21.6.3 配置用戶詳細信息控制器 402
21.6.4 測試查看用戶詳細信息 402
21.7 完成添加用戶模組 402
21.7.1 創建用戶添加頁 402
21.7.2 創建用戶添加控制器 403
21.7.3 配置用戶添加控制器 404
21.7.4 創建校驗規則檔案 404
21.7.5 測試添加用戶 405
21.8 完成刪除用戶模組 407
21.8.1 創建用戶刪除控制器 407
21.8.2 配置用戶刪除控制器 407
21.8.3 測試刪除用戶 408
21.9 完成更新用戶模組 408
21.9.1 創建用戶更新頁 408
21.9.2 創建用戶更新控制器 409
21.9.3 配置用戶更新控制器 410
21.9.4 創建校驗規則檔案 410
21.9.5 測試更新用戶 410
21.10 小結 411