本書系統(tǒng)地介紹了?JSP?開發(fā)所涉及的各類知識。全書共13章,內(nèi)容包括JSP概述、JSP開發(fā)基礎(chǔ)、JSP語法、JSP內(nèi)置對象、JavaBean技術(shù)、Servlet技術(shù)、JSP實(shí)用組件、JSP數(shù)據(jù)庫應(yīng)用開發(fā)、JSP與AJAX及JSP高級技術(shù),并通過JSP綜合案例——清爽夏日九宮格日記網(wǎng),介紹了JSP應(yīng)用的開發(fā)流程和相關(guān)技術(shù)的綜合應(yīng)用。本書最后提供了兩個課程設(shè)計,即在線投票系統(tǒng)和無刷新的聊天室,供學(xué)生綜合實(shí)踐使用。
本書為慕課版教材(讀者)可登錄人郵學(xué)院學(xué)習(xí)配套慕課;同時各章主要內(nèi)容配備了以二維碼為載體的微課。此外,本書還提供了課程資源包,資源包中有本書所有實(shí)例、上機(jī)指導(dǎo)、綜合案例和課程設(shè)計的源代碼,以及制作精良的電子課件PPT、自測試卷等。其中,源代碼全部經(jīng)過精心測試,能夠在Windows 7、Windows 8、Windows 10操作系統(tǒng)下編譯和運(yùn)行。
本書既可作為高等院校計算機(jī)相關(guān)專業(yè)的教材,也可供JSP學(xué)習(xí)者參考使用。
本書特色:
(1)案例式教學(xué),“綜合案例與課程設(shè)計”共同輔助知識點(diǎn)講解,理論與實(shí)踐緊密結(jié)合。
(2)錄制55學(xué)時優(yōu)質(zhì)慕課,支持高校開展線上線下混合式教學(xué)。
(3)附贈164個教學(xué)視頻,方便讀者隨時隨地掃碼觀看,讓學(xué)習(xí)更加高效、便捷。
(4)配套豐富且免費(fèi)的教學(xué)資源,包括PPT、源代碼、自測試卷、綜合案例和課程設(shè)計等。
明日科技:
已經(jīng)在人民郵電出版社出版多本“程序設(shè)計類”圖書,包括“技術(shù)方案寶典”、“開發(fā)技術(shù)大全”、“自學(xué)手冊”、“參考大全”等多個系列,大都取得了比較好的市場反響,內(nèi)容由淺入深,讀者好評如潮。
【章名目錄】
第 1章 JSP概述 1
第 2章 JSP開發(fā)基礎(chǔ) 22
第3章 JSP語法 54
第4章 JSP內(nèi)置對象 78
第5章 JavaBean技術(shù) 94
第6章 Servlet技術(shù) 116
第7章 JSP實(shí)用組件 155
第8章 JSP數(shù)據(jù)庫應(yīng)用開發(fā) 178
第9章 JSP與AJAX 198
第 10章 JSP高級技術(shù) 223
第 11章 JSP綜合案例——清爽夏日九宮格日記網(wǎng) 245
第 12章 課程設(shè)計一 ——在線投票系統(tǒng) 298
第 13章 課程設(shè)計二——無刷新的聊天室 314
【詳細(xì)目錄】
第 1章 JSP概述 1
1.1 JSP技術(shù)概述 2
1.2 JSP技術(shù)特征 3
1.3 JSP的處理過程 4
1.4 JSP與其他服務(wù)器端技術(shù)的比較 5
1.5 JSP開發(fā)環(huán)境搭建 6
1.5.1 JSP的運(yùn)行環(huán)境 6
1.5.2 JDK的安裝與配置 7
1.5.3 Tomcat的安裝與啟動 9
1.6 JSP開發(fā)工具 11
1.6.1 Eclipse的安裝與啟動 11
1.6.2 Eclipse的使用 12
1.7 JSP程序開發(fā)模式 17
1.8 第 一個JSP應(yīng)用 19
1.9 本章小結(jié) 21
習(xí)題 21
上機(jī)指導(dǎo) 21
第 2章 JSP開發(fā)基礎(chǔ) 22
2.1 Java語言基礎(chǔ) 23
2.1.1 基本數(shù)據(jù)類型及基本數(shù)據(jù)類型間的轉(zhuǎn)換 23
2.1.2 變量與常量 24
2.1.3 運(yùn)算符的應(yīng)用 25
2.1.4 流程控制語句 28
2.1.5 字符串處理 33
2.1.6 數(shù)組的創(chuàng)建與應(yīng)用 35
2.1.7 面向?qū)ο蟪绦蛟O(shè)計 36
2.1.8 集合類的應(yīng)用 41
2.1.9 異常處理語句 42
2.2 JavaScript腳本語言 43
2.2.1 JavaScript腳本語言概述 44
2.2.2 在JSP中引入JavaScript 44
2.2.3 JavaScript的數(shù)據(jù)類型與運(yùn)算符 44
2.2.4 JavaScript的流程控制語句 46
2.2.5 函數(shù)的定義和調(diào)用 48
2.2.6 事件 49
2.2.7 JavaScript常用對象的應(yīng)用 50
2.3 本章小結(jié) 52
習(xí)題 53
上機(jī)指導(dǎo) 53
第3章 JSP語法 54
3.1 了解JSP的基本構(gòu)成 55
3.2 JSP的指令標(biāo)識 55
3.2.1 使用page指令 56
3.2.2 使用include指令 58
3.2.3 使用taglib指令 59
3.3 JSP的腳本標(biāo)識 59
3.3.1 JSP表達(dá)式 59
3.3.2 聲明標(biāo)識 60
3.3.3 腳本程序 61
3.4 JSP的注釋 62
3.4.1 HTML中的注釋 62
3.4.2 帶有JSP表達(dá)式的注釋 62
3.4.3 隱藏注釋 63
3.4.4 腳本程序(Scriptlet)中的注釋 63
3.5 動作標(biāo)識 65
3.5.1 65
3.5.2 67
3.5.3 68
3.5.4 70
3.5.5 73
3.5.6 75
3.5.7 75
3.6 本章小結(jié) 76
習(xí)題 76
上機(jī)指導(dǎo) 77
第4章 JSP內(nèi)置對象 78
4.1 JSP內(nèi)置對象概述 79
4.2 request對象 80
4.2.1 訪問請求參數(shù) 80
4.2.2 在作用域中管理屬性 81
4.2.3 獲取Cookie 81
4.2.4 獲取客戶信息 82
4.2.5 訪問安全信息 83
4.2.6 訪問國際化信息 83
4.3 response對象 84
4.3.1 重定向網(wǎng)頁 84
4.3.2 設(shè)置HTTP響應(yīng)報頭 85
4.3.3 緩沖區(qū)配置 86
4.4 session對象 87
4.4.1 創(chuàng)建及獲取客戶的會話 87
4.4.2 從會話中移除指定的對象 87
4.4.3 銷毀session 88
4.4.4 會話超時的管理 88
4.5 application對象 89
4.5.1 訪問應(yīng)用程序初始化參數(shù) 89
4.5.2 管理應(yīng)用程序環(huán)境屬性 90
4.6 out對象 90
4.6.1 管理響應(yīng)緩沖 90
4.6.2 向客戶端輸出數(shù)據(jù) 91
4.7 其他內(nèi)置對象 91
4.7.1 獲取會話范圍的pageContext對象 91
4.7.2 讀取web.xml配置信息的config對象 92
4.7.3 應(yīng)答或請求的page對象 92
4.7.4 獲取異常信息的exception對象 92
4.8 本章小結(jié) 93
習(xí)題 93
上機(jī)指導(dǎo) 93
第5章 JavaBean技術(shù) 94
5.1 JavaBean概述 95
5.1.1 JavaBean技術(shù)介紹 95
5.1.2 JavaBean的種類 95
5.1.3 JavaBean規(guī)范 96
5.2 JavaBean中的屬性 97
5.2.1 簡單屬性 97
5.2.2 索引屬性 98
5.3 JavaBean的應(yīng)用方法 98
5.3.1 創(chuàng)建JavaBean 99
5.3.2 在JSP中應(yīng)用JavaBean 100
5.4 JavaBean的應(yīng)用實(shí)例 104
5.4.1 應(yīng)用JavaBean解決中文亂碼問題 104
5.4.2 應(yīng)用JavaBean實(shí)現(xiàn)購物車 107
5.5 本章小結(jié) 114
習(xí)題 115
上機(jī)指導(dǎo) 115
第6章 Servlet技術(shù) 116
6.1 Servlet基礎(chǔ) 117
6.1.1 Servlet技術(shù)簡介 117
6.1.2 Servlet技術(shù)功能 117
6.1.3 Servlet技術(shù)特點(diǎn) 117
6.1.4 Servlet的生命周期 118
6.1.5 Servlet與JSP的區(qū)別 119
6.1.6 Servlet的代碼結(jié)構(gòu) 119
6.2 Servlet API編程的常用接口和類 120
6.2.1 javax.servlet.Servlet接口 120
6.2.2 HttpServlet類 120
6.2.3 ServletConfig接口 121
6.2.4 HttpServletRequest接口 121
6.2.5 HttpServletResponse接口 122
6.2.6 GenericServlet類 123
6.3 Servlet開發(fā) 123
6.3.1 Servlet的創(chuàng)建 123
6.3.2 Servlet的配置 125
6.4 Servlet過濾器 128
6.4.1 什么是過濾器 128
6.4.2 過濾器核心對象 129
6.4.3 過濾器的創(chuàng)建與配置 130
6.4.4 字符編碼過濾器 133
6.5 Servlet監(jiān)聽器 137
6.5.1 Servlet監(jiān)聽器簡介 137
6.5.2 Servlet監(jiān)聽器的工作原理 137
6.5.3 監(jiān)聽Servlet上下文 137
6.5.4 監(jiān)聽HTTP會話 138
6.5.5 監(jiān)聽Servlet請求 139
6.5.6 使用監(jiān)聽器查看在線用戶 139
6.6 Servlet的應(yīng)用實(shí)例 141
6.6.1 應(yīng)用Servlet實(shí)現(xiàn)留言板 141
6.6.2 應(yīng)用Servlet實(shí)現(xiàn)購物車 145
6.7 本章小結(jié) 153
習(xí)題 154
上機(jī)指導(dǎo) 154
第7章 JSP實(shí)用組件 155
7.1 JSP文件操作 156
7.1.1 添加表單及表單元素 156
7.1.2 創(chuàng)建文件上傳對象 156
7.1.3 解析上傳請求 156
7.2 發(fā)送E-mail 159
7.2.1 Java Mail組件簡介 159
7.2.2 Java Mail核心類簡介 159
7.2.3 搭建Java Mail的開發(fā)環(huán)境 163
7.2.4 在JSP中應(yīng)用Java Mail組件發(fā)送E-mail 164
7.3 JSP動態(tài)圖表 166
7.3.1 JFreeChart的下載與使用 166
7.3.2 JFreeChart的核心類 167
7.3.3 利用JFreeChart生成動態(tài)圖表 167
7.4 JSP報表 169
7.4.1 iText組件簡介 169
7.4.2 iText組件的下載與配置 169
7.4.3 應(yīng)用iText組件生成JSP報表 170
7.5 本章小結(jié) 177
習(xí)題 177
上機(jī)指導(dǎo) 177
第8章 JSP數(shù)據(jù)庫應(yīng)用開發(fā) 178
8.1 數(shù)據(jù)庫管理系統(tǒng) 179
8.1.1 SQL Server 2008數(shù)據(jù)庫 179
8.1.2 MySQL數(shù)據(jù)庫 181
8.1.3 Oracle數(shù)據(jù)庫 181
8.1.4 Access數(shù)據(jù)庫 181
8.2 JDBC概述 181
8.2.1 JDBC技術(shù)介紹 181
8.2.2 JDBC驅(qū)動程序 182
8.3 JDBC中的常用接口 183
8.3.1 驅(qū)動程序接口Driver 183
8.3.2 驅(qū)動程序管理器DriverManager 183
8.3.3 數(shù)據(jù)庫連接接口Connection 183
8.3.4 執(zhí)行SQL語句接口Statement 184
8.3.5 執(zhí)行動態(tài)SQL語句接口PreparedStatement 185
8.3.6 執(zhí)行存儲過程接口CallableStatement 185
8.3.7 訪問結(jié)果集接口ResultSet 186
8.4 JDBC訪問數(shù)據(jù)庫的過程 187
8.5 典型JSP數(shù)據(jù)庫的連接 188
8.5.1 SQL Server 2008數(shù)據(jù)庫的連接 188
8.5.2 Access數(shù)據(jù)庫的連接 189
8.5.3 MySQL數(shù)據(jù)庫的連接 190
8.6 數(shù)據(jù)庫操作技術(shù) 190
8.6.1 查詢操作 191
8.6.2 添加操作 192
8.6.3 修改操作 192
8.6.4 刪除操作 193
8.7 連接池技術(shù) 194
8.7.1 連接池簡介 194
8.7.2 在Tomcat中配置連接池 195
8.7.3 使用連接池技術(shù)訪問數(shù)據(jù)庫 195
8.8 本章小結(jié) 197
習(xí)題 197
上機(jī)指導(dǎo) 197
第9章 JSP與AJAX 198
9.1 了解AJAX 199
9.1.1 什么是AJAX 199
9.1.2 AJAX開發(fā)模式與傳統(tǒng)開發(fā)模式的比較 199
9.2 使用XMLHttpRequest對象 200
9.2.1 初始化XMLHttpRequest對象 200
9.2.2 XMLHttpRequest對象的常用方法 201
9.2.3 XMLHttpRequest對象的常用屬性 202
9.3 傳統(tǒng)AJAX的工作流程 203
9.3.1 發(fā)送請求 203
9.3.2 處理服務(wù)器響應(yīng) 205
9.3.3 一個完整的實(shí)例——檢測用戶名是否唯一 206
9.4 應(yīng)用jQuery實(shí)現(xiàn)AJAX 208
9.4.1 jQuery簡介 208
9.4.2 我的第 一個jQuery腳本 209
9.4.3 應(yīng)用load( )方法發(fā)送請求 210
9.4.4 發(fā)送GET請求和POST請求 211
9.4.5 服務(wù)器返回的數(shù)據(jù)格式 215
9.4.6 使用$.ajax( )方法 219
9.5 AJAX開發(fā)需要注意的幾個問題 220
9.5.1 安全問題 220
9.5.2 性能問題 221
9.5.3 瀏覽器兼容性問題 221
9.5.4 中文編碼問題 221
9.6 本章小結(jié) 222
習(xí)題 222
上機(jī)指導(dǎo) 222
第 10章 JSP高級技術(shù) 223
10.1 EL表達(dá)式 224
10.1.1 表達(dá)式語言 224
10.1.2 EL表達(dá)式的簡單使用 224
10.1.3 EL表達(dá)式的語法 224
10.1.4 EL表達(dá)式的運(yùn)算符 225
10.1.5 EL表達(dá)式中的隱含對象 226
10.1.6 EL表達(dá)式中的保留字 226
10.2 JSTL標(biāo)準(zhǔn)標(biāo)簽庫 227
10.2.1 表達(dá)式標(biāo)簽 230
10.2.2 條件標(biāo)簽 232
10.2.3 循環(huán)標(biāo)簽 235
10.2.4 URL操作標(biāo)簽 236
10.3 自定義標(biāo)簽庫的開發(fā) 238
10.3.1 自定義標(biāo)簽的定義格式 238
10.3.2 自定義標(biāo)簽的構(gòu)成 238
10.3.3 在JSP文件中引用自定義標(biāo)簽 240
10.4 JSP框架技術(shù) 242
10.4.1 Spring框架 242
10.4.2 MyBatis框架 243
10.5 本章小結(jié) 244
習(xí)題 244
上機(jī)指導(dǎo) 244
第 11章 JSP綜合案例——清爽夏日九宮格日記網(wǎng) 245
11.1 項(xiàng)目設(shè)計思路 246
11.1.1 功能闡述 246
11.1.2 系統(tǒng)預(yù)覽 246
11.1.3 功能結(jié)構(gòu) 247
11.1.4 文件夾組織結(jié)構(gòu) 248
11.2 數(shù)據(jù)庫設(shè)計 248
11.2.1 數(shù)據(jù)庫設(shè)計 248
11.2.2 數(shù)據(jù)表設(shè)計 249
11.3 公共模塊設(shè)計 249
11.3.1 編寫數(shù)據(jù)庫連接及操作的類 249
11.3.2 編寫保存分頁代碼的JavaBean 252
11.3.3 配置解決中文亂碼的過濾器 254
11.3.4 編寫實(shí)體類 255
11.4 主頁面設(shè)計 256
11.4.1 主頁面概述 256
11.4.2 讓采用“DIV+CSS”布局的頁面內(nèi)容居中 256
11.4.3 主頁面的實(shí)現(xiàn)過程 257
11.5 用戶模塊設(shè)計 258
11.5.1 用戶模塊概述 258
11.5.2 實(shí)現(xiàn)AJAX重構(gòu) 258
11.5.3 用戶注冊的實(shí)現(xiàn)過程 260
11.5.4 用戶登錄的實(shí)現(xiàn)過程 269
11.5.5 退出登錄的實(shí)現(xiàn)過程 273
11.5.6 找回密碼的實(shí)現(xiàn)過程 273
11.6 顯示九宮格日記列表模塊設(shè)計 275
11.6.1 顯示九宮格日記列表概述 275
11.6.2 展開和收縮圖片 276
11.6.3 查看日記原圖 278
11.6.4 對日記圖片進(jìn)行左轉(zhuǎn)和右轉(zhuǎn) 278
11.6.5 顯示全部九宮格日記的實(shí)現(xiàn)過程 281
11.6.6 “我的日記”的實(shí)現(xiàn)過程 284
11.6.7 刪除“我的日記”的實(shí)現(xiàn)過程 285
11.7 寫九宮格日記模塊設(shè)計 286
11.7.1 寫九宮格日記概述 286
11.7.2 填寫日記信息的實(shí)現(xiàn)過程 286
11.7.3 預(yù)覽生成的日記圖片的實(shí)現(xiàn)過程 291
11.7.4 保存日記圖片的實(shí)現(xiàn)過程 295
11.8 項(xiàng)目發(fā)布 296
11.9 本章小結(jié) 297
第 12章 課程設(shè)計一 ——在線投票系統(tǒng) 298
12.1 課程設(shè)計的目的 299
12.2 設(shè)計思路 299
12.2.1 顯示投票選項(xiàng)的設(shè)計思路 299
12.2.2 參與投票的設(shè)計思路 299
12.2.3 顯示投票結(jié)果的設(shè)計思路 300
12.3 設(shè)計過程 300
12.3.1 數(shù)據(jù)表的設(shè)計 300
12.3.2 值JavaBean的設(shè)計 301
12.3.3 數(shù)據(jù)庫操作類的編寫 302
12.3.4 工具類的編寫 307
12.3.5 顯示投票選項(xiàng)的設(shè)計 307
12.3.6 參與投票的設(shè)計 309
12.3.7 查看結(jié)果的設(shè)計 311
12.4 本章小結(jié) 313
第 13章 課程設(shè)計二——無刷新的聊天室 314
13.1 課程設(shè)計的目的 315
13.2 設(shè)計思路 315
13.3 設(shè)計過程 315
13.3.1 用戶JavaBean的編寫 315
13.3.2 登錄頁面的設(shè)計 316
13.3.3 聊天室主頁面設(shè)計 317
13.3.4 在線人員列表的設(shè)計 317
13.3.5 用戶發(fā)言的設(shè)計 319
13.3.6 顯示聊天內(nèi)容的設(shè)計 320
13.3.7 退出聊天室的設(shè)計 322
13.4 本章小結(jié) 323
參考文獻(xiàn) 324