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