第1章 Servlet和JSP技术概述 1
1.1 servlet的功用 1
1.2 要动态构建网页的原因 2
1.3 servlet代码初探 3
1.4 Servlet相对于“传统”CGI的优点 4
1.5 JSP的作用 6
第Ⅰ部分 Servlet技术 11
第2章 服务器的安装和配置 11
2.1 下载和安装Java软件开发工具包 12
2.2 为桌面计算机下载服务器 13
2.3 服务器的配置 15
2.4 配置Apache Tomcat 15
2.5 配置Macromedia JRun 20
2.6 配置Caucho Resin 24
2.7 建立开发环境 25
2.8 测试系统的设置 28
2.9 实现简化的部署方法 35
2.10 默认Web应用的部署目录:汇总 37
2.11 Web应用:预览 40
第3章 servlet基础 48
3.1 servlet的基本结构 49
3.2 生成纯文本的servlet 50
3.3 生成HTML的servlet 51
3.4 servlet的打包 53
3.5 简单的HTML构建工具 54
3.6 servlet的生命周期 56
3.7 Single ThreadModel接口 62
3.8 servlet的调试 65
第4章 客户请求的处理:表单数据 68
4.1 表单数据的作用 68
4.2 在servlet中读取表单数据 69
4.3 示例:读取3个参数 72
4.4 示例:读取所有参数 74
4.5 参数缺失或异常时默认值的应用 77
4.6 过滤字符串中的HTML特殊字符 85
4.7 根据请求参数自动填充Java对象:表单bean 90
4.8 当参数缺失或异常时重新显示输入表单 96
第5章 客户请求的处理:HTTP请求报头 104
5.1 请求报头的读取 104
5.2 制作所有请求报头的表格 106
5.3 了解HTTP 1.1请求报头 108
5.4 发送压缩Web页面 111
5.5 区分不同的浏览器类型 114
5.6 依据客户的到达方式定制页面 116
5.7 标准CGI变量的访问 119
第6章 服务器响应的生成:HTTP状态代码 124
6.1 状态代码的指定 125
6.2 HTTP 1.1状态代码 126
6.3 将用户重定向到浏览器相关页面的servlet 130
6.4 各种搜索引擎的一个前端 132
第7章 服务器响应的生成:HTTP响应报头 138
7.1 在servlet中设置响应报头 138
7.2 理解HTTP 1.1响应报头 139
7.3 构建Excel电子表格 144
7.4 servlet状态的持续以及页面的自动重载 145
7.5 使用servlet生成JPEG图像 154
第8章 Cookie管理 162
8.1 cookie的优点 162
8.2 cookie存在的一些问题 164
8.3 cookie的删除 166
8.4 cookie的发送和接收 166
8.5 使用cookie检测初访者 169
8.6 使用cookie属性 171
8.7 区分会话cookie 持续性cookie 173
8.8 基本的cookie实用程序 175
8.9 实际使用cookie实用程序 177
8.10 修改cookie的值:记录用户的访问计数 179
8.11 使用cookie记录用户的偏好 180
第9章 会话跟踪 185
9.1 会话跟踪的需求 185
9.2 会话跟踪基础 187
9.3 会话跟踪API 189
9.4 浏览器会话与服务器会话 191
9.5 对发往客户的URL进行编码 192
9.6 显示客户访问计数的servlet 193
9.7 累计用户数据的列表 195
9.8 拥有购物车和会话跟踪功能的在线商店 198
第Ⅱ部分 JSP技术 215
第10章 JSP技术概述 215
10.1 对JSP的需求 216
10.2 JSP的好处 216
10.3 JSP相对于竞争技术的优势 217
10.4 对JSP的误解 219
10.5 JSP页面的安装 221
10.6 基本语法 223
11.1 模板文本的创建 226
11.2 在JSP中调用Java代码 226
第11章 用JSP脚本元素调用Java代码 226
11.3 限制JSP页面中Java代码的量 227
11.4 JSP表达式的应用 230
11.5 示例:JSP表达式 232
11.6 servlet和JSP页面的对比 234
11.7 编写scriptlet 235
11.8 scriptlet示例 237
11.9 使用scriptlet将JSP页面的某些部分条件化 238
11.10 使用声明 240
11.11 声明的例子 241
11.12 使用预定义变量 243
11.13 JSP表达式、scriptlet和声明的比较 244
第12章 控制所生成的servlet的结构:JSP page指令 249
12.1 import属性 249
12.2 contentType和pageEncoding属性 252
12.3 条件性地生成Excel电子表格 253
12.4 session属性 255
12.5 isELIgnored属性 256
12.6 buffer和autoFlush属性 256
12.7 info属性 257
12.8 errorPage和isErrorPage属性 257
12.9 isThreadSafe属性 259
12.10 extends属性 260
12.11 language属性 261
12.12 指令的XML语法 261
第13章 在JSP页面中包含文件和applet 262
13.1 在请求期间包含页面:jsp:include动作 262
13.2 在页面转换期间包含文件:include指令 266
13.3 使用jsp:forward转发请求 270
13.4 包含使用Java插件的applet 271
第14章 JavaBean组件在JSP文档中的应用 279
14.1 使用bean的原因 279
14.2 bean是什么 280
14.3 bean的应用:基本任务 281
14.4 示例:StringBean 284
14.5 设置bean的属性:高级技术 286
14.6 共享bean 291
14.7 共享bean的4种方式:示例 294
第15章 servlet和JSP的集成:模型-视图-控制器构架 303
15.1 MVC的需求 303
15.2 用RequestDispatcher实现MVC 305
15.3 MVC代码汇总 309
15.4 目的页面中相对URL的解释 310
15.5 MVC的应用:银行账户余额 311
15.6 3种数据共享方式的对比 317
15.7 从JSP页面转发请求 322
15.8 包含页面 323
第16章 简化对Java代码的访问:JSP 2.0表达式语言 325
16.1 应用EL的驱动力 325
16.2 表达式语言的调用 327
16.3 阻止表达式语言的求值 327
16.4 阻止标准脚本元素的使用 330
16.5 访问作用域变量 330
16.6 访问bean的属性 332
16.7 访问集合 337
16.8 引用隐式对象 339
16.9 表达式语言中运算符的应用 341
16.10 表达式的条件求值 344
16.11 表达式语言其他功能概览 346
第Ⅲ部分 支持技术 351
第17章 数据库访问:JDBC 351
17.1 JDBC应用概述 352
17.2 基本JDBC示例 358
17.3 用JDBC实用工具简化数据库访问 364
17.4 使用预备语句 374
17.5 创建可调用语句 377
17.6 使用数据库事务 382
17.7 使用ORM框架将数据映射到对象 386
第18章 配置MS Access,MySQL和Oracle9i 392
18.1 配置Microsoft Access与JDBC的使用 392
18.2 MySQL的安装和配置 396
18.3 Oracle9i数据库的安装和配置 398
18.4 通过JDBC连接来测试数据库 420
18.5 建立music表 426
第19章 HTML表单的创建和处理 431
19.1 HTML表单如何传输数据 432
19.2 FORM元素 435
19.3 文本控件 439
19.4 按钮 443
19.5 复选框和单选按钮 447
19.6 组合框和列表框 450
19.7 文件上载控件 453
19.8 服务器端图像映射 455
19.9 隐藏域 458
19.10 控件组 458
19.11 制表次序 460
19.12 用于调试的Web服务器 460
附录 服务器的组织与结构 467