第1章 网页开发技术概述 1
1.1 HTML简介 1
1.1.1 HTML的基本结构 1
1.1.2 头部分 2
1.1.3 体部分 3
1.2 动态网页技术 10
1.3 JSP动态网页技术优势 10
1.4 小结 11
1.5 练习 12
第2章 JSP及Servlet程序运行环境搭建 13
2.1 JDK安装及环境变量配置 13
2.2 Tomcat安装及配置 16
2.3 通过JSP简单示例网页验证Tomcat环境配置 18
2.4 小结 19
2.5 练习 20
第3章 在JSP中调用Java代码 21
3.1 基本动态技术元素 21
3.2 Java类 25
3.3 JSP页面的底层工作机制 26
3.4 小结 30
3.5 练习 30
第4章 JSP指令 31
4.1 page指令 31
4.2 include指令 34
4.3 小结 36
4.4 练习 36
第5章 JSP动作 38
5.1 jsp:include动作 38
5.2 jsp:forward动作 41
5.3 jsp:plugin动作 44
5.4 小结 46
5.5 练习 46
第6章 JSP隐含对象 47
6.1 request 47
6.1.1 取得网页请求参数 47
6.1.2 取得请求头部信息 53
6.1.3 取得客户和主机信息 56
6.2 response 58
6.2.1 设置Content-Type 58
6.2.2 发送错误响应至客户端 59
6.2.3 重定向 61
6.3 session 62
6.4 application 63
6.5 out 65
6.6 config 68
6.7 小结 69
6.8 练习 69
第7章 Java Bean在JSP中的应用 70
7.1 Bean的基本概念 70
7.2 Bean的应用 72
7.2.1 简单工具Bean示例 73
7.2.2 在Bean中实现数据库连接池 75
7.3 Bean的属性及应用 80
7.3.1 值Bean的特性 80
7.3.2 值Bean的应用 81
7.4 小结 86
7.5 练习 86
第8章 共享数据 87
8.1 在页面间传递数据 87
8.1.1 通过请求在页面间传递数据 87
8.1.2 通过Java Bean在页面间传递数据 89
8.2 会话共享数据 91
8.2.1 会话简介 91
8.2.2 在会话对象中保存数据 92
8.2.3 在会话中共享Java Bean 94
8.3 用户间共享数据 96
8.3.1 在应用中共享数据 96
8.3.2 在应用中共享Java Bean 97
8.4 小结 98
8.5 练习 98
第9章 Servlet基础 99
9.1 Servlet与JSP 99
9.1.1 Servlet的功用 99
9.1.2 Servlet与JSP的比较及选择 100
9.2 使用Servlet生成纯文本 101
9.2.1 编写Servlet代码 101
9.2.2 在服务器中部署Servlet 102
9.2.3 Servlet工作流程简析 104
9.3 使用Servlet生成HTML 105
9.4 Servlet生命周期 106
9.4.1 Servlet高效率的原因 106
9.4.2 Servlet生命周期探究 106
9.4.3 特殊的Servlet——过滤器 111
9.4.4 Servlet应用实例 112
9.5 小结 116
9.6 练习 116
第10章 Servlet处理客户请求 117
10.1 Servlet读取客户请求参数 117
10.1.1 Servlet遍历请求对象中的参数 117
10.1.2 Servlet读取表单参数 119
10.2 根据请求参数自动填充表单Bean 121
10.2.1 Java Bean及JSP填充表单Bean回顾 121
10.2.2 在Servlet中实现值Bean的填充 121
10.2.3 参数缺失时重新显示表单 124
10.3 Servlet处理客户请求实例 128
10.4 小结 134
10.5 练习 134
第11章 Cookie 135
11.1 Cookie简介 135
11.1.1 Cookie的作用 135
11.1.2 Cookie存在的问题 136
11.1.3 删除浏览器保存的Cookie及禁用Cookie 137
11.2 Cookie的生成与读取 141
11.2.1 服务端使用Cookie的过程 141
11.2.2 生成与读取Cookie 142
11.3 Cookie的属性 144
11.3.1 Cookie的name和value属性 144
11.3.2 Cookie的maxAge属性 145
11.3.3 Cookie的其他属性 148
11.4 Cookie常用实例 150
11.4.1 记录用户的偏好 150
11.4.2 保存登录账号与密码 152
11.5 小结 156
11.6 练习 156
第12章 会话跟踪 157
12.1 Web应用中的会话 157
12.1.1 会话存在的必要性 157
12.1.2 会话跟踪的实现方式 158
12.2 利用会话跟踪保持访问信息 160
12.2.1 在会话中保存与读取数据 160
12.2.2 会话属性与会话控制 162
12.3 会话配置及会话使用注意事项 165
12.3.1 在Tomcat中配置会话 165
12.3.2 会话使用注意事项 165
12.4 会话跟踪实例 166
12.4.1 利用会话协调页面行为 166
12.4.2 简单购物车 169
12.5 小结 176
12.6 练习 176
第13章 模型-视图-控制构架 177
13.1 MVC简介 177
13.1.1 Web应用程序结构 177
13.1.2 MVC框架特征 178
13.2 实现MVC框架的一般步骤 180
13.2.1 定义表示数据的Java Bean 180
13.2.2 使用Servlet处理请求 181
13.2.3 填充Java Bean 182
13.2.4 将Java Bean存储到请求、会话或者Servlet上下文 183
13.2.5 转发请求 184
13.2.6 JSP页面从Java Bean中提取数据 185
13.2.7 MVC框架时序流程 186
13.3 MVC框架实例 187
13.4 小结 194
13.5 练习 195
第14章 异常处理 196
14.1 利用Java的异常处理机制处理异常 196
14.1.1 Java异常处理机制回顾 196
14.1.2 在Servlet和Java Bean中进行异常处理 198
14.2 JSP错误页面 200
14.2.1 在JSP页面中使用Java异常处理机制 200
14.2.2 使用JSP错误页面显示错误信息 202
14.3 在Tomcat中配置错误页面 204
14.3.1 配置标准错误页面 204
14.3.2 配置特定异常错误页面 206
14.4 异常处理实例 213
14.5 小结 217
14.6 练习 217
第15章 自定义JSP标签 218
15.1 简单自定义JSP标签实例 218
15.1.1 实现自定义JSP标签Java代码 218
15.1.2 配置标签库 219
15.1.3 使用自定义JSP标签 220
15.2 为自定义JSP标签添加属性 221
15.2.1 自定义标签通过属性增加灵活性 221
15.2.2 定义自定义标签的属性 221
15.2.3 自定义标签处理程序获取属性并使用 222
15.3 处理自定义JSP标签的标签体 223
15.3.1 标签体的概念及需求 223
15.3.2 定义包含标签体的自定义标签 224
15.3.3 自定义标签处理程序处理标签体 225
15.4 自定义标签总结 226
15.4.1 标签定义总结 226
15.4.2 标签处理程序总结 228
15.5 自定义标签实例 229
15.6 小结 232
15.7 练习 232
第16章 国际化与本地化编程 233
16.1 国际化编程 233
16.1.1 Java对国际化的支持 233
16.1.2 国际化Web应用 234
16.2 本地化编程 236
16.2.1 为Web应用准备本地化字符串 236
16.2.2 在Servlet中使用本地化文本 238
16.2.3 在JSP页面中使用本地化文本 239
16.3 国际化与本地化编程实例 241
16.4 小结 245
16.5 练习 245
第17章 JSP表达式语言 246
17.1 表达式语言简介 246
17.1.1 表达式语言的简单示例 246
17.1.2 表达式语言的功能 247
17.2 配置表达式语言及标准脚本元素的有效性 247
17.2.1 禁止表达式语言执行 247
17.2.2 禁止标准脚本元素的使用 250
17.3 表达式语言访问变量 251
17.3.1 表达式语言访问Java Bean的属性 251
17.3.2 表达式语言访问不同作用域内的变量 255
17.3.3 表达式语言访问集合中的变量 257
17.3.4 表达式语言访问隐含对象 259
17.4 表达式语言的运算符 260
17.4.1 算术运算符 260
17.4.2 关系运算符 261
17.4.3 逻辑运算符 261
17.4.4 运算符综合例程 261
17.5 小结 262
17.6 练习 263
附录 课后习题参考答案 264
参考文献 292