本書是“十二五”普通高等教育本科國(guó)家級(jí)規(guī)劃教材,以JSP程序設(shè)計(jì)技術(shù)為主線介紹Web程序設(shè)計(jì)的方法與技術(shù)。全書共10章,包括:Web基礎(chǔ)知識(shí)和開發(fā)運(yùn)行環(huán)境;HTML、XML和CSS;JavaScript程序設(shè)計(jì);JSP基本語(yǔ)法與內(nèi)置對(duì)象;Servlet與JavaBean;JSP數(shù)據(jù)庫(kù)應(yīng)用;JSP實(shí)用組件;表達(dá)式語(yǔ)言與標(biāo)簽;Java EE框架技術(shù)基礎(chǔ);JSP綜合應(yīng)用實(shí)例。每章配有大量實(shí)例、習(xí)題和上機(jī)實(shí)驗(yàn)題及實(shí)驗(yàn)指導(dǎo),免費(fèi)提供PPT教學(xué)課件和程序源代碼。本書可作為高校計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程、網(wǎng)絡(luò)工程、電子商務(wù)、人工智能、數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)、信息管理與信息系統(tǒng)、現(xiàn)代教育技術(shù)等相關(guān)專業(yè)的教材,也是Web程序開發(fā)人員實(shí)用的技術(shù)參考書。
吉根林,博士,南京師范大學(xué)教授,博士生導(dǎo)師。1982年考入南京航空航天大學(xué)計(jì)算機(jī)專業(yè)學(xué)習(xí),1986年本科畢業(yè),獲工學(xué)學(xué)士學(xué)位;同年進(jìn)入南京航空航天大學(xué)計(jì)算機(jī)應(yīng)用技術(shù)專業(yè)攻讀碩士學(xué)位,1989年碩士畢業(yè),獲工學(xué)碩士學(xué)位。
目 錄
第1章 Web基礎(chǔ)知識(shí)與開發(fā)運(yùn)行環(huán)境 1
1.1 Web工作原理 1
1.2 Internet網(wǎng)絡(luò)協(xié)議 3
1.2.1 TCP/IP協(xié)議族 4
1.2.2 HTTP 4
1.2.3 Telnet 5
1.2.4 FTP 5
1.3 IP地址、域名和URL 5
1.3.1 IP地址 5
1.3.2 域名 6
1.3.3 URL 6
1.4 動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)技術(shù)簡(jiǎn)介 7
1.4.1 PHP 7
1.4.2 JSP 8
1.4.3 ASP.NET 9
1.5 Web應(yīng)用程序開發(fā)工具與運(yùn)行環(huán)境 9
1.5.1 網(wǎng)站架構(gòu) 10
1.5.2 JDK的下載、安裝與配置 10
1.5.3 Tomcat的下載、安裝與配置 11
1.5.4 Eclipse的下載、安裝與配置 12
1.6 簡(jiǎn)單的Web應(yīng)用程序示例 12
1.7 網(wǎng)站安全問(wèn)題 15
1.7.1 網(wǎng)站攻擊手段 15
1.7.2 網(wǎng)站的保護(hù)與安全措施 15
本章小結(jié) 17
習(xí)題1 18
第2章 HTML、XML和CSS 19
2.1 頁(yè)面設(shè)計(jì)概述 19
2.1.1 靜態(tài)網(wǎng)頁(yè) 19
2.1.2 動(dòng)態(tài)網(wǎng)頁(yè) 19
2.1.3 網(wǎng)頁(yè)的設(shè)計(jì)風(fēng)格 20
2.2 超文本標(biāo)記語(yǔ)言HTML 20
2.2.1 HTML文檔結(jié)構(gòu) 21
2.2.2 HTML基本標(biāo)記 23
2.2.3 表格 27
2.2.4 表單 30
2.2.5 框架(Frame) 32
2.3 HTML5 35
2.3.1 HTML5新特性 35
2.3.2 HTML5新功能 35
2.3.3 HTML5網(wǎng)頁(yè)示例 39
2.4 層疊樣式表CSS 43
2.4.1 為什么需要層疊樣式表 43
2.4.2 樣式表的定義和引用 44
2.4.3 樣式的優(yōu)先級(jí) 49
2.4.4 CSS屬性 51
2.4.5 CSS+DIV頁(yè)面布局 58
2.5 XML簡(jiǎn)介 59
2.5.1 XML概述 59
2.5.2 XML文檔結(jié)構(gòu) 61
2.5.3 XML文檔顯示 63
2.6 應(yīng)用示例:個(gè)人主頁(yè)設(shè)計(jì) 64
本章小結(jié) 67
習(xí)題2 67
上機(jī)實(shí)驗(yàn)2 67
第3章 JavaScript程序設(shè)計(jì) 71
3.1 腳本語(yǔ)言概述 71
3.1.1 什么是腳本語(yǔ)言 71
3.1.2 JavaScript的特點(diǎn) 72
3.2 JavaScript基礎(chǔ) 73
3.2.1 JavaScript程序的編輯和調(diào)試 73
3.2.2 JavaScript基本語(yǔ)法 74
3.2.3 JavaScript函數(shù) 76
3.2.4 JavaScript流程控制 78
3.2.5 JavaScript出錯(cuò)處理 80
3.2.6 JavaScript表單驗(yàn)證 80
3.2.7 JavaScript正則表達(dá)式 81
3.3 JavaScript事件 82
3.3.1 JavaScript事件驅(qū)動(dòng)機(jī)制 82
3.3.2 JavaScript常用事件 83
3.3.3 JavaScript事件觸發(fā)與處理 83
3.3.4 應(yīng)用示例:計(jì)算器的設(shè)計(jì) 84
3.4 JavaScript對(duì)象 86
3.4.1 對(duì)象的定義和引用 86
3.4.2 for..in和with語(yǔ)句 87
3.4.3 JavaScript內(nèi)置對(duì)象 89
3.5 瀏覽器對(duì)象模型及應(yīng)用 98
3.5.1 瀏覽器對(duì)象模型 98
3.5.2 Navigator對(duì)象 99
3.5.3 Window對(duì)象 100
3.5.4 Document對(duì)象 103
3.5.5 Form對(duì)象 109
3.5.6 History和Location對(duì)象 114
3.5.7 Frame對(duì)象 114
3.5.8 應(yīng)用示例:用戶注冊(cè)信息合法性檢查 116
3.5.9 應(yīng)用示例:撲克牌游戲程序 120
3.6 HTML DOM 123
3.6.1 HTML DOM概述 123
3.6.2 DOM節(jié)點(diǎn)樹 124
3.6.3 DOM樹節(jié)點(diǎn)的屬性 124
3.6.4 訪問(wèn)DOM節(jié)點(diǎn) 125
3.7 JavaScript框架和庫(kù) 127
本章小結(jié) 127
習(xí)題3 128
上機(jī)實(shí)驗(yàn)3 128
第4章 JSP基本語(yǔ)法與內(nèi)置對(duì)象 130
4.1 JSP基本語(yǔ)法 130
4.1.1 JSP頁(yè)面 131
4.1.2 JSP指令 130
4.1.3 JSP腳本標(biāo)識(shí) 131
4.2 JSP內(nèi)置對(duì)象 134
4.2.1 Request對(duì)象 135
4.2.2 Response對(duì)象 137
4.2.3 Session對(duì)象 139
4.2.4 Application對(duì)象 143
4.2.5 其他對(duì)象 145
4.3 JSP動(dòng)作標(biāo)識(shí) 149
4.3.1 include動(dòng)作標(biāo)識(shí) 149
4.3.2 forward動(dòng)作標(biāo)識(shí) 150
4.3.3 param動(dòng)作標(biāo)識(shí) 152
4.4 Cookie及其應(yīng)用 153
4.5 應(yīng)用示例:Web聊天程序 155
本章小結(jié) 159
習(xí)題4 159
上機(jī)實(shí)驗(yàn)4 160
第5章 Servlet與JavaBean 162
5.1 Servlet簡(jiǎn)介 162
5.2 Servlet的運(yùn)行和配置 163
5.2.1 Servlet的生命周期 163
5.2.2 Servlet配置 165
5.3 Servlet API 167
5.3.1 Servlet接口 167
5.3.2 ServletConfig接口 168
5.3.3 GenericServlet類 168
5.3.4 HttpServlet類 169
5.4 Servlet編程 170
5.4.1 Servlet的基本結(jié)構(gòu) 170
5.4.2 表單處理 171
5.4.3 Servlet編程示例 172
5.5 組件技術(shù)和JavaBean 174
5.5.1 JavaBean簡(jiǎn)介 174
5.5.2 創(chuàng)建和部署JavaBean 176
5.6 JavaBean的屬性 177
5.7 在JSP中引用JavaBean 179
5.8 應(yīng)用示例 182
本章小結(jié) 187
習(xí)題5 187
上機(jī)實(shí)驗(yàn)5 188
第6章 JSP數(shù)據(jù)庫(kù)應(yīng)用 189
6.1 Web數(shù)據(jù)庫(kù)訪問(wèn)技術(shù) 189
6.2 數(shù)據(jù)庫(kù)語(yǔ)言SQL 191
6.2.1 SQL概述 191
6.2.2 主要SQL語(yǔ)句 191
6.3 JDBC API 193
6.3.1 驅(qū)動(dòng)程序接口Driver 194
6.3.2 驅(qū)動(dòng)程序管理器DriverManager 195
6.3.3 數(shù)據(jù)庫(kù)連接接口Connection 195
6.3.4 語(yǔ)句執(zhí)行接口Statement和PrepareStatement 196
6.3.5 結(jié)果集接口ResultSet 197
6.4 JDBC數(shù)據(jù)庫(kù)訪問(wèn) 198
6.4.1 加載JDBC驅(qū)動(dòng)程序 198
6.4.2 創(chuàng)建數(shù)據(jù)庫(kù)連接 199
6.4.3 執(zhí)行SQL語(yǔ)句訪問(wèn)數(shù)據(jù)庫(kù) 200
6.4.4 數(shù)據(jù)庫(kù)訪問(wèn)結(jié)果集的處理 202
6.4.5 數(shù)據(jù)庫(kù)操作中的事務(wù)處理 203
6.4.6 存儲(chǔ)過(guò)程的調(diào)用 204
6.5 JSP數(shù)據(jù)庫(kù)操作 206
6.6 SQL語(yǔ)句注入攻擊與防范 207
6.6.1 SQL注入攻擊 207
6.6.2 避免SQL注入攻擊 208
6.7 應(yīng)用示例:課程信息查詢與修改 208
本章小結(jié) 214
習(xí)題6 215
上機(jī)實(shí)驗(yàn)6 215
第7章 JSP實(shí)用組件 216
7.1 文件操作 216
7.1.1 創(chuàng)建上傳對(duì)象 216
7.1.2 解析上傳請(qǐng)求 217
7.1.3 FileItem接口 217
7.1.4 ServletFileUpload類 217
7.1.5 DiskFileItemFactory類 218
7.1.6 文件操作示例 219
7.2 JSP動(dòng)態(tài)圖表 222
7.2.1 JFreeChart的下載和使用 223
7.2.2 JFreeChart的核心類 223
7.2.3 利用JFreeChart生成動(dòng)態(tài)圖表 224
7.2.4 動(dòng)態(tài)圖表應(yīng)用示例 224
7.3 JSP報(bào)表 228
7.3.1 iText組件 229
7.3.2 應(yīng)用iText組件生成報(bào)表 229
7.3.3 處理表格 231
7.3.4 處理圖像 235
7.4 Ajax技術(shù) 237
7.4.1 Ajax簡(jiǎn)介 237
7.4.2 Ajax開發(fā)模式 238
7.4.3 Ajax應(yīng)用示例 241
7.4.4 Ajax開發(fā)需要注意的問(wèn)題 243
本章小結(jié) 245
習(xí)題7 245
上機(jī)實(shí)驗(yàn)7 245
第8章 表達(dá)式語(yǔ)言和標(biāo)簽 247
8.1 EL表達(dá)式 247
8.1.1 EL表達(dá)式的語(yǔ)法 247
8.1.2 EL表達(dá)式的運(yùn)算符 247
8.1.3 EL表達(dá)式中的隱含對(duì)象 248
8.1.4 EL表達(dá)式中的保留字 249
8.2 JSTL核心標(biāo)簽庫(kù) 249
8.2.1 表達(dá)式標(biāo)簽 249
8.2.2 流程控制標(biāo)簽 251
8.2.3 循環(huán)標(biāo)簽 254
8.2.4 URL標(biāo)簽 256
8.3 SQL標(biāo)簽庫(kù) 258
8.4 自定義標(biāo)簽庫(kù) 260
8.4.1 自定義標(biāo)簽處理類 260
8.4.2 建立TLD文件 261
8.4.3 使用自定義標(biāo)簽 262
8.4.4 自定義標(biāo)簽使用范例 262
本章小結(jié) 264
習(xí)題8 265
上機(jī)實(shí)驗(yàn)8 265
第9章 Java EE框架技術(shù)基礎(chǔ) 266
9.1 框架技術(shù)概述 266
9.1.1 MVC模型與設(shè)計(jì)模式 266
9.1.2 Struts2框架 267
9.1.3 Hibernate框架 268
9.1.4 Spring框架 268
9.2 Struts2框架 269
9.2.1 Struts2的下載和配置 270
9.2.2 Struts2基礎(chǔ)和struts.xml的基本配置 270
9.2.3 Action詳解 272
9.2.4 值棧和OGNL表達(dá)式 274
9.2.5 Struts2的標(biāo)簽庫(kù) 275
9.2.6 攔截器 280
本章小結(jié) 283
習(xí)題9 283
上機(jī)實(shí)驗(yàn)9 283
第10章 JSP綜合應(yīng)用實(shí)例 284
10.1 留言板 284
10.1.1 設(shè)計(jì)目標(biāo) 284
10.1.2 設(shè)計(jì)實(shí)體類 284
10.1.3 設(shè)計(jì)數(shù)據(jù)庫(kù)處理程序 285
10.1.4 設(shè)計(jì)留言處理程序 286
10.1.5 設(shè)計(jì)頁(yè)面 288
10.1.6 設(shè)計(jì)字符編碼過(guò)濾器 291
10.2 教務(wù)管理系統(tǒng) 293
10.2.1 系統(tǒng)功能 293
10.2.2 數(shù)據(jù)庫(kù)設(shè)計(jì) 294
10.2.3 設(shè)計(jì)實(shí)體類 295
10.2.4 文件組織架構(gòu) 296
10.2.5 設(shè)計(jì)數(shù)據(jù)庫(kù)處理程序 297
10.2.6 設(shè)計(jì)Action類 299
10.2.7 設(shè)計(jì)視圖 310
10.2.8 設(shè)計(jì)樣式表 322
10.2.9 設(shè)計(jì)配置文件 323
本章小結(jié) 324
附錄A HTML常用標(biāo)記和屬性 325
附錄B CSS樣式表屬性 329
附錄C JavaScript常用對(duì)象的屬性、方法、事件處理和函數(shù) 331
附錄D JSP內(nèi)置對(duì)象 337
參考文獻(xiàn) 340