第1章 Web应用开发概述 1
1.1 网络程序开发体系结构 1
1.1.1 C/S结构介绍 1
1.1.2 B/S结构介绍 2
1.1.3 两种体系结构的比较 2
1.2 Web简介 3
1.2.1 什么是Web 3
1.2.2 Web的工作原理 3
1.2.3 Web的发展历程 4
1.3 Web开发技术 4
1.3.1 客户端应用技术 5
1.3.2 服务器端应用技术 6
知识点提炼 7
习题 8
第2章 客户端应用技术基础 9
2.1 HTML 5标记语言 9
2.1.1 HTML 5文档结构 9
2.1.2 HTML文字排版标记 11
2.1.3 图片与超链接标记 13
2.1.4 HTML 5新增的语义元素 14
2.1.5 制作表格 17
2.1.6 播放音频和视频 18
2.1.7 表单标记 19
2.2 CSS样式表 23
2.2.1 样式表的定义与引用 24
2.2.2 CSS规则 25
2.2.3 CSS选择器 25
2.2.4 CSS常用属性 27
2.3 JavaScript脚本语言 28
2.3.1 JavaScript的语言基础 28
2.3.2 JavaScript的流程控制语句 32
2.3.3 JavaScript函数的定义及调用 35
2.3.4 事件处理 35
2.3.5 常用对象 37
2.3.6 DOM技术 39
2.4 综合实例——应用DIV+CSS布局许愿墙主界面 41
知识点提炼 47
习题 48
实验:验证用户注册信息的合法性 48
实验目的 48
实验内容 48
实验步骤 48
第1章 Web应用开发概述 1
1.1 网络程序开发体系结构 1
1.1.1 C/S结构介绍 1
1.1.2 B/S结构介绍 2
1.1.3 两种体系结构的比较 2
1.2 Web简介 3
1.2.1 什么是Web 3
1.2.2 Web的工作原理 3
1.2.3 Web的发展历程 4
1.3 Web开发技术 4
1.3.1 客户端应用技术 5
1.3.2 服务器端应用技术 6
知识点提炼 7
习题 8
第2章 客户端应用技术基础 9
2.1 HTML 5标记语言 9
2.1.1 HTML 5文档结构 9
2.1.2 HTML文字排版标记 11
2.1.3 图片与超链接标记 13
2.1.4 HTML 5新增的语义元素 14
2.1.5 制作表格 17
2.1.6 播放音频和视频 18
2.1.7 表单标记 19
2.2 CSS样式表 23
2.2.1 样式表的定义与引用 24
2.2.2 CSS规则 25
2.2.3 CSS选择器 25
2.2.4 CSS常用属性 27
2.3 JavaScript脚本语言 28
2.3.1 JavaScript的语言基础 28
2.3.2 JavaScript的流程控制语句 32
2.3.3 JavaScript函数的定义及调用 35
2.3.4 事件处理 35
2.3.5 常用对象 37
2.3.6 DOM技术 39
2.4 综合实例——应用DIV+CSS布局许愿墙主界面 41
知识点提炼 47
习题 48
实验:验证用户注册信息的合法性 48
实验目的 48
实验内容 48
实验步骤 48
第3章 搭建JSP开发环境 53
3.1 JSP概述 53
3.1.1 Java的体系结构 53
3.1.2 JSP技术特征 54
3.1.3 JSP页面的执行过程 55
3.1.4 JSP中应用MVC架构 56
3.1.5 JSP开发及运行环境 56
3.2 JDK的安装与配置 58
3.2.1 JDK的下载与安装 58
3.2.2 Windows系统下配置和测试JDK 59
3.3 Tomcat的安装与配置 60
3.3.1 下载和安装Tomcat服务器 60
3.3.2 Tomcat的目录结构 62
3.3.3 修改Tomcat的默认端口 63
3.3.4 部署Web应用 63
3.4 MySQL数据库的安装与使用 64
3.4.1 MySQL数据库概述 64
3.4.2 下载和安装MySQL数据库 64
3.4.3 使用MySQL的图形化工具 67
3.5 Eclipse开发工具的安装与使用 69
3.5.1 Eclipse的下载与安装 70
3.5.2 启动Eclipse 70
3.5.3 安装Eclipse中文语言包 70
3.5.4 Eclipse工作台 71
3.6 综合实例——使用Eclipse开发一个JSP网站 72
知识点提炼 76
习题 76
实验:创建并发布一个JSP网站 76
实验目的 76
实验内容 76
实验步骤 76
第4章 Java语言基础 78
4.1 面向对象程序设计 78
4.1.1 什么是类和对象 78
4.1.2 定义类 79
4.1.3 定义成员方法 80
4.1.4 定义成员变量与局部变量 81
4.1.5 构造方法的使用 82
4.1.6 Java对象的创建与使用 83
4.1.7 包的使用 84
4.2 数据类型 85
4.2.1 基本数据类型 85
4.2.2 基本数据类型之间的转换 86
4.3 常量与变量 86
4.3.1 定义常量 87
4.3.2 定义变量 87
4.4 运算符的应用 87
4.4.1 赋值运算符 87
4.4.2 算术运算符 88
4.4.3 比较运算符 88
4.4.4 逻辑运算符 89
4.4.5 位运算符 89
4.4.6 条件运算符 90
4.4.7 自增自减运算符 91
4.4.8 运算符的优先级 92
4.5 流程控制语句 92
4.5.1 分支语句 92
4.5.2 循环语句 95
4.5.3 使用break、continue语句实现程序的跳转 98
4.6 字符串处理 99
4.6.1 创建字符串对象 99
4.6.2 连接字符串 100
4.6.3 判断字符串对象是否相等 100
4.6.4 字符串替换 102
4.6.5 获取子字符串 102
4.6.6 将字符串转换为数值类型 103
4.7 数组的创建与使用 104
4.7.1 什么是数组及数组的应用 104
4.7.2 一维数组的创建及遍历 105
4.7.3 二维数组的创建及遍历 106
4.8 集合类的应用 106
4.8.1 ArrayList类 107
4.8.2 Vector类 108
4.9 综合实例——在控制台上输出九九乘法表 110
知识点提炼 110
习题 111
实验:输出由*号组成的菱形 111
实验目的 111
实验内容 111
实验步骤 111
第5章 JSP基本语法 113
5.1 JSP页面的基本构成 113
5.2 脚本标识 114
5.2.1 JSP表达式(Expression) 114
5.2.2 声明标识(Declaration) 115
5.2.3 代码片段 115
5.3 注释 116
5.3.1 HTML中的注释 117
5.3.2 隐藏注释 117
5.3.3 动态注释 118
5.3.4 代码片段中的注释 118
5.4 指令标识 120
5.4.1 page指令 120
5.4.2 include指令 122
5.4.3 taglib指令 124
5.5 动作标识 125
5.5.1 操作JavaBean的动作标识 125
5.5.2 包含外部文件的动作标识jsp:include 128
5.5.3 执行请求转发的动作标识jsp:forward 130
5.5.4 设置参数的子动作标识jsp:param 131
5.6 综合实例——包含需要传递参数的文件 131
知识点提炼 133
习题 134
实验:动态添加下拉列表的列表项 134
实验目的 134
实验内容 134
实验步骤 134
第6章 JSP的内置对象 136
6.1 内置对象概述 136
6.2 request对象 137
6.2.1 获取访问请求参数 137
6.2.2 获取表单提交的信息 138
6.2.3 解决中文乱码 138
6.2.4 通过request对象进行数据传递 139
6.2.5 获取客户端信息 140
6.2.6 获取cookie 141
6.2.7 显示国际化信息 143
6.3 response响应对象 143
6.3.1 实现重定向页面 143
6.3.2 处理HTTP文件头 144
6.3.3 设置输出缓冲 146
6.4 out输出对象 146
6.4.1 向客户端输出数据 146
6.4.2 管理相应缓冲区 147
6.5 session会话对象 148
6.5.1 创建及获取客户的会话 148
6.5.2 从会话中移除指定的对象 148
6.5.3 设置session的有效时间 149
6.5.4 销毁session 149
6.6 application应用对象 149
6.6.1 访问应用程序初始化参数 149
6.6.2 应用程序环境属性管理 150
6.6.3 应用application实现网页计数器 152
6.7 其他内置对象 152
6.7.1 应答与请求的page对象 152
6.7.2 获取页面上下文的pageContext对象 153
6.7.3 获取web.xml配置信息的config对象 154
6.7.4 获取异常信息的exception对象 154
6.8 综合实例——应用session实现用户登录 155
知识点提炼 157
习题 158
实验:带验证码的用户登录 158
实验目的 158
实验内容 158
实验步骤 158
第7章 JavaBean技术 161
7.1 JavaBean技术简介 161
7.1.1 JavaBean概述 161
7.1.2 JavaBean的种类 162
7.2 JavaBean的应用 163
7.2.1 获取JavaBean属性 163
7.2.2 对JavaBean属性赋值 165
7.2.3 如何在JSP页面中应用JavaBean 166
7.3 综合实例——应用JavaBean解决中文乱码 169
知识点提炼 172
习题 172
实验:转换输入文本中的回车和空格 172
实验目的 172
实验内容 172
实验步骤 172
第8章 Servlet技术 175
8.1 Servlet基础 175
8.1.1 Servlet体系结构 175
8.1.2 Servlet技术特点 176
8.1.3 Servlet与JSP的区别 177
8.2 Servlet开发 177
8.2.1 创建Servlet 178
8.2.2 Servlet配置 181
8.2.3 在Servlet中实现页面转发 182
8.2.4 Servlet处理表单数据 183
8.3 Servlet过滤器 184
8.3.1 什么是过滤器 184
8.3.2 过滤器核心对象 185
8.3.3 过滤器创建与配置 186
8.4 Servlet监听器 190
8.4.1 Servlet监听器简介 190
8.4.2 Servlet监听器的原理 190
8.4.3 Servlet上下文监听 190
8.4.4 HTTP会话监听 192
8.4.5 Servlet请求监听 193
8.5 综合实例——应用监听器统计在线用户 193
知识点提炼 196
习题 197
实验:编写一个字符编码过滤器 197
实验目的 197
实验内容 197
实验步骤 197
第9章 数据库应用开发 201
9.1 JDBC简介 201
9.1.1 JDBC技术介绍 201
9.1.2 JDBC驱动程序 202
9.2 JDBC API 203
9.2.1 Driver接口 203
9.2.2 Connection接口 203
9.2.3 DriverManager类 204
9.2.4 Statement接口 205
9.2.5 PreparedStatement接口 206
9.2.6 CallableStatement接口 207
9.2.7 ResultSet接口 207
9.3 连接数据库 208
9.3.1 加载JDBC驱动程序 208
9.3.2 创建数据库连接 208
9.3.3 执行SQL语句 210
9.3.4 获得查询结果 210
9.3.5 关闭连接 210
9.4 JDBC操作数据库 210
9.4.1 添加数据 210
9.4.2 查询数据 214
9.4.3 修改数据 217
9.4.4 删除数据 219
9.4.5 批处理 219
9.4.6 调用存储过程 222
9.5 综合实例——分页查询 225
知识点提炼 230
习题 230
实验:实现批量删除数据 230
实验目的 230
实验内容 230
实验步骤 231
第10章 EL表达式 235
10.1 表达式语言(EL)概述 235
10.1.1 EL的基本语法 235
10.1.2 EL的特点 236
10.2 与低版本的环境兼容——禁用EL 236
10.2.1 使用斜杠“\”符号 236
10.2.2 使用page指令 237
10.2.3 在web.xml文件中配置el-ignored元素 237
10.3 EL的保留关键字 237
10.4 EL的运算符及优先级 238
10.4.1 通过EL访问数据 238
10.4.2 在EL中进行算术运算 240
10.4.3 在EL中判断对象是否为空 240
10.4.4 在EL中进行逻辑关系运算 241
10.4.5 在EL中进行条件运算 242
10.5 EL的隐含对象 243
10.5.1 页面上下文对象 243
10.5.2 访问作用域范围的隐含对象 244
10.5.3 访问环境信息的隐含对象 246
10.6 定义和使用EL的函数 248
10.6.1 定义和使用函数 248
10.6.2 定义和使用EL函数时常见的错误 250
10.7 综合实例——通过EL显示投票结果 251
知识点提炼 254
习题 254
实验:应用EL访问JavaBean属性 254
实验目的 254
实验内容 255
实验步骤 255
第11章 JSTL核心标签库 257
11.1 JSTL标签库简介 257
11.2 JSTL的下载与配置 258
11.2.1 下载JSTL标签库 259
11.2.2 配置JSTL 259
11.3 表达式标签 261
11.3.1 c:out输出标签 261
11.3.2 c:set变量设置标签 262
11.3.3 c:remove变量移除标签 265
11.3.4 c:catch捕获异常标签 266
11.4 URL相关标签 266
11.4.1 c:import导入标签 266
11.4.2 c:url动态生成URL标签 268
11.4.3 c:redirect重定向标签 269
11.4.4 c:param传递参数标签 270
11.5 流程控制标签 271
11.5.1 c:if条件判断标签 271
11.5.2 c:choose条件选择标签 272
11.5.3 c:when条件测试标签 273
11.5.4 c:otherwise其他条件标签 274
11.6 循环标签 275
11.6.1 c:forEach循环标签 275
11.6.2 c:forTokens迭代标签 278
11.7 综合实例——JSTL在电子商城中的应用 279
知识点提炼 281
习题 282
实验:显示数据库中的图书信息 282
实验目的 282
实验内容 282
实验步骤 282
第12章 JSP操作XML 285
12.1 XML简介 285
12.1.1 XML文档结构 285
12.1.2 XML语法要求 287
12.1.3 为XML文档中的元素定义属性 287
12.1.4 XML的注释 287
12.1.5 处理字符数据 288
12.2 dom4j概述 289
12.2.1 dom4j简介 289
12.2.2 dom4j的下载与配置 290
12.3 创建XML文件 290
12.3.1 创建XML文档对象 290
12.3.2 创建根节点 290
12.3.3 添加注释 291
12.3.4 添加属性 291
12.3.5 创建子节点 291
12.3.6 设置节点的内容 292
12.3.7 设置编码 292
12.3.8 设置输出格式 293
12.3.9 输出XML文件 293
12.4 解析XML文档 294
12.4.1 构建XML文档对象 294
12.4.2 获取根节点 294
12.4.3 获取子节点 295
12.5 修改XML文档 295
12.5.1 修改节点 296
12.5.2 删除节点 296
12.6 综合实例——保存公告信息到XML文件 297
知识点提炼 300
习题 300
实验:管理保存在XML文件中的公告信息 301
实验目的 301
实验内容 301
实验步骤 301
第13章 JSP与Ajax 309
13.1 Ajax简介 309
13.1.1 什么是Ajax 309
13.1.2 Ajax开发模式与传统开发模式的比较 309
13.1.3 Ajax的优点 310
13.1.4 Ajax使用的技术 311
13.2 使用XMLHttpRequest对象 312
13.2.1 初始化XMLHttpRequest对象 312
13.2.2 XMLHttpRequest对象的常用方法 313
13.2.3 XMLHttpRequest对象的常用属性 314
13.3 传统Ajax的工作流程 315
13.3.1 发送请求 315
13.3.2 处理服务器响应 316
13.3.3 一个完整的实例——检测用户名是否唯一 318
13.4 jQuery实现Ajax 320
13.4.1 jQuery简介 320
13.4.2 应用load()方法发送请求 322
13.4.3 发送GET和POST请求 324
13.4.4 服务器返回的数据格式 328
13.4.5 使用$.ajax()方法 331
13.5 需要注意的几个问题 333
13.5.1 安全问题 333
13.5.2 性能问题 334
13.5.3 浏览器兼容性问题 334
13.5.4 中文编码问题 334
13.6 综合实例——多级联动下拉列表 335
知识点提炼 340
习题 341
实验:实时显示公告信息 341
实验目的 341
实验内容 341
实验步骤 341
第14章 综合案例——九宫格日记网 343
14.1 需求分析 343
14.2 总体设计 344
14.2.1 系统目标 344
14.2.2 构建开发环境 344
14.2.3 网站功能结构 344
14.2.4 系统流程图 345
14.3 数据库设计 345
14.3.1 数据库概要说明 346
14.3.2 数据库E-R图 346
14.3.3 数据表结构 347
14.4 公共模块设计 347
14.4.1 编写数据库连接及操作的类 347
14.4.2 编写保存分页代码的JavaBean 350
14.4.3 配置解决中文乱码的过滤器 352
14.4.4 编写实体类 353
14.5 网站主要模块开发 354
14.5.1 主界面设计 354
14.5.2 显示九宫格日记列表模块 356
14.5.3 写九宫格日记模块设计 366
14.6 网站编译与发布 378
14.6.1 网站编译 378
14.6.2 网站发布 381
第15章 课程设计——图书馆管理系统 383
15.1 课程设计目的 383
15.2 功能描述 384
15.3 总体设计 384
15.3.1 构建开发环境 384
15.3.2 网站功能结构 384
15.3.3 系统流程图 385
15.4 数据库设计 385
15.4.1 E-R图 386
15.4.2 数据表设计 387
15.5 实现过程 391
15.5.1 系统登录设计 391
15.5.2 主界面设计 393
15.5.3 图书借阅设计 395
15.5.4 图书续借设计 400
15.5.5 图书归还设计 402
15.6 调试运行 403
第16章 课程设计——博客网 405
16.1 课程设计目的 405
16.2 功能描述 405
16.3 总体设计 406
16.3.1 构建开发环境 406
16.3.2 网站功能结构 406
16.3.3 系统流程图 407
16.4 数据库设计 407
16.4.1 E-R图 407
16.4.2 数据表设计 408
16.4.3 数据表之间的关系图 411
16.5 实现过程 412
16.5.1 前台主页设计 412
16.5.2 我的文章列表设计 413
16.5.3 博主登录设计 415
16.5.4 观看影音模块设计 418
16.5.5 上传影音模块设计 420
16.6 调试运行 424
16.7 课程设计总结 424