本书是“十二五”普通高等教育本科国家级规划教材、江苏“十四五”普通高等教育本科省级规划教材。本书以JSP程序设计技术为主线来介绍Web程序设计的方法与技术,使读者学会建立网站,学会开发Web应用系统。全书共10章,包括Web基础知识与开发运行环境;HTML、CSS与XML;JavaScript程序设计;JSP基本语法与内置对象;Servlet与JavaBean;JSP数据库应用;JSP实用组件;JavaScript框架与技术;Java EE框架技术;JSP综合应用实例。全书配有大量例题,部分章节还安排了习题和上机实验,并免费提供PPT教学课件。本书可作为高校计算机科学与技术、软件工程、网络工程、电子商务、人工智能、数据科学与大数据技术、信息管理与信息系统、现代教育技术等相关专业教材,也可作为Web程序开发人员实用的技术参考书。
吉根林,博士,教授,博士生导师,现任南京师范大学计算机与电子信息学院/人工智能学院教授委员会主任;教育部计算机课程教学指导委员会委员、教育部教育教学审核评估专家;江苏省“青蓝工程”中青年学术带头人;全国高等师范院校计算机教育研究会副理事长;中国计算机学会人工智能与模式识别专委会委员、计算机教育专委会委员,江苏省计算机学会大数据专家委员会主任;江苏省人工智能学会监事长;承担国家和省部级科研项目10多项;担任《数据结构》国家一流本科课程负责人;获得江苏省科学技术奖和江苏省教学成果奖、江苏省计算机杰出教育奖;发表学术论文150多篇,主编教材11部。2009-2022年任南京师范大学计算机学院/人工智能学院院长。
第1章 Web基础知识与开发运行环境 1
1.1 Web工作原理 1
1.2 Internet网络协议 3
1.2.1 TCP/IP协议 3
1.2.2 HTTP协议 4
1.3 网站架构与后端开发技术 5
1.3.1 网站架构 5
1.3.2 Web后端开发技术 5
1.4 网页设计技术概述 6
1.4.1 静态网页 6
1.4.2 动态网页 6
1.4.3 网页的设计风格 9
1.5 Web应用程序开发工具与
运行环境 9
1.5.1 JDK的下载、安装与配置 9
1.5.2 Tomcat的下载、安装与
配置 10
1.5.3 Eclipse的下载、安装与
配置 11
1.6 一个简单的Web应用程序示例 11
1.6.1 创建第一个Web项目 12
1.6.2 目录结构 13
1.6.3 应用程序部署 13
1.7 网站安全问题 14
1.7.1 网站攻击手段 14
1.7.2 网站的保护与安全措施 14
本章小结 16
习题1 17
第2章 HTML、CSS与XML 18
2.1 HTML 18
2.1.1 HTML简介 18
2.1.2 HTML文档结构 19
2.1.3 HTML基本标记 21
2.1.4 表格 25
2.1.5 表单 28
2.1.6 框架(frame) 29
2.2 HTML5 32
2.2.1 HTML5新特性 32
2.2.2 HTML5新增标记和功能 32
2.2.3 HTML5页面示例 37
2.3 CSS 39
2.3.1 为什么需要CSS 39
2.3.2 样式表的定义和引用 40
2.3.3 样式的优先级 45
2.3.4 CSS基本属性 47
2.3.5 CSS盒子模型 51
2.3.6 CSS页面布局 52
2.3.7 CSS3新增选择器和属性 55
2.4 XML 58
2.4.1 XML概述 58
2.4.2 XML文档结构 59
2.4.3 XML文档显示 60
2.5 应用示例——个人主页设计 61
本章小结 63
习题2 63
上机实验 63
第3章 JavaScript程序设计 66
3.1 JavaScript语言基础 66
3.1.1 JavaScript语言概述 66
3.1.2 JavaScript程序的编辑和
调试 67
3.1.3 JavaScript基本语法 67
3.1.4 JavaScript函数 70
3.1.5 JavaScript流程控制 72
3.1.6 JavaScript错误处理 73
3.1.7 JavaScript表单验证 74
3.1.8 JavaScript正则表达式 74
3.2 JavaScript事件处理 76
3.2.1 JavaScript事件驱动机制 76
3.2.2 JavaScript常用事件 76
3.2.3 JavaScript事件触发与
处理 76
3.2.4 应用示例——简易计算器
设计 77
3.3 JavaScript对象 79
3.3.1 对象的定义和引用 79
3.3.2 for…in和with语句 80
3.3.3 JavaScript内置对象 82
3.4 BOM及其应用 89
3.4.1 BOM 89
3.4.2 window对象 90
3.4.3 navigator对象 93
3.4.4 document对象 94
3.4.5 form对象 97
3.4.6 history对象和
location对象 102
3.5 DOM及其应用 102
3.5.1 DOM概述 102
3.5.2 DOM树形结构 103
3.5.3 DOM节点的类型 104
3.5.4 DOM节点的属性 104
3.5.5 访问DOM树节点 106
3.6 应用示例 108
3.6.1 用户注册信息检验 108
3.6.2 扑克牌游戏 111
本章小结 114
习题3 115
上机实验 115
第4章 JSP基本语法与内置对象 117
4.1 JSP基本语法 117
4.1.1 JSP页面 117
4.1.2 JSP指令 117
4.1.3 JSP脚本标识 118
4.2 JSP内置对象 121
4.2.1 request对象 122
4.2.2 response对象 124
4.2.3 session对象 126
4.2.4 application对象 130
4.2.5 其他对象 132
4.3 JSP动作标识 136
4.3.1 include动作标识 136
4.3.2 forward动作标识 137
4.3.3 param动作标识 138
4.4 Cookie及其应用 139
4.4.1 Cookie的概念 139
4.4.2 JSP操作Cookie 140
4.5 应用示例——Web聊天程序 142
本章小结 146
习题4 146
上机实验 146
第5章 Servlet与JavaBean 149
5.1 Servlet简介 149
5.2 Servlet的生命周期和配置 150
5.2.1 Servlet的生命周期 150
5.2.2 Servlet的配置 152
5.3 Servlet API 154
5.3.1 Servlet接口 154
5.3.2 ServletConfig接口 155
5.3.3 GenericServlet类 155
5.3.4 HttpServlet类 156
5.4 Servlet编程 157
5.4.1 Servlet的基本结构 157
5.4.2 表单处理 158
5.4.3 Servlet编程示例 159
5.5 组件技术和JavaBean 161
5.5.1 JavaBean简介 161
5.5.2 创建和部署JavaBean 162
5.6 JavaBean的属性 163
5.7 在JSP中引用JavaBean 165
5.8 应用示例 168
本章小结 173
习题5 174
上机实验 174
第6章 JSP数据库应用 175
6.1 Web数据库访问技术 175
6.2 数据库语言SQL 177
6.2.1 SQL概述 177
6.2.2 主要SQL语句 177
6.3 JDBC API 179
6.3.1 驱动程序接口Driver 180
6.3.2 驱动程序管理器DriverManager 180
6.3.3 数据库连接接口Connection 181
6.3.4 语句执行接口Statement和PreparedStatement 182
6.3.5 结果集接口ResultSet 183
6.4 JDBC数据库访问 184
6.4.1 加载JDBC驱动程序 184
6.4.2 创建数据库连接 185
6.4.3 执行SQL语句访问
数据库 186
6.4.4 数据库访问结果集的
处理 188
6.4.5 数据库操作中的事务
处理 188
6.4.6 存储过程的调用 190
6.5 JSP数据库操作 191
6.6 SQL语句注入式攻击与防范 192
6.6.1 SQL注入式攻击 193
6.6.2 避免SQL注入式攻击 194
6.7 应用示例——课程信息查询与
修改 194
本章小结 200
习题6 200
上机实验 201
第7章 JSP实用组件 202
7.1 文件操作 202
7.1.1 创建上传对象 202
7.1.2 解析上传请求 202
7.1.3 FileItem接口 202
7.1.4 ServletFileUpload类 203
7.1.5 DiskFileItemFactory类 204
7.1.6 文件操作示例 204
7.2 HTML解析器 208
7.2.1 Jsoup组件简介 208
7.2.2 Jsoup组件的主要功能 208
7.2.3 使用Jsoup组件解析
HTML示例 209
7.3 JSP报表 210
7.3.1 iText组件 210
7.3.2 应用iText组件生成
PDF文档 210
7.3.3 处理表格 212
7.3.4 处理图像 216
本章小结 218
习题7 218
上机实验 218
第8章 JavaScript框架与技术 220
8.1 JavaScript框架和库概述 220
8.1.1 基本概念 220
8.1.2 MVVM设计模式 220
8.1.3 jQuery 221
8.1.4 React 222
8.1.5 Angular 222
8.1.6 Vue 222
8.2 Vue框架及应用 222
8.2.1 组件化 223
8.2.2 MVVM数据双向绑定 223
8.2.3 响应式虚拟DOM 223
8.2.4 生命周期 223
8.2.5 Vue基本文件结构 225
8.2.6 一个Vue示例 225
8.3 AJAX技术 229
8.3.1 AJAX简介 229
8.3.2 AJAX开发模式 230
8.3.3 一个AJAX示例 233
8.4 Web数据可视化 236
8.4.1 ECharts简介 236
8.4.2 ECharts开发环境搭建 237
8.4.3 ECharts常用组件 239
8.4.4 动态图表应用示例 240
本章小结 242
习题8 242
上机实验 243
第9章 Java EE框架技术 244
9.1 Java EE框架技术概述 244
9.1.1 MVC模型与设计模式 244
9.1.2 Spring框架简介 245
9.1.3 Spring MVC框架简介 246
9.1.4 MyBatis框架简介 248
9.2 Spring MVC框架 250
9.2.1 Spring MVC的下载 250
9.2.2 Spring MVC接口 250
9.2.3 Spring MVC注解 251
9.2.4 请求处理方法的
参数类型 260
9.2.5 请求处理方法的
返回类型 261
9.2.6 Spring MVC注解
开发实例 263
本章小结 268
习题9 269
上机实验 269
第10章 JSP综合应用实例 270
10.1 留言板 270
10.1.1 设计目标 270
10.1.2 设计实体类 270
10.1.3 设计数据库处理程序 271
10.1.4 设计留言处理程序 272
10.1.5 设计页面 274
10.1.6 设计字符编码过滤器 277
10.2 教务管理系统 278
10.2.1 系统功能 279
10.2.2 数据库设计 279
10.2.3 设计实体类 281
10.2.4 文件组织架构 282
10.2.5 设计数据库处理程序 283
10.2.6 设计action类 284
10.2.7 设计视图 295
10.2.8 设计样式表 307
10.2.9 设计配置文件 308
本章小结 309
附录A HTML语言常用标记和属性 310
附录B CSS样式表属性 315
附录C JavaScript常用对象的属性、
方法、事件处理和函数 318
附录D JSP内置对象 325
参考文献