致谢 1
前言 1
第1章 预备知识 1
1.1 创建因特网应用 1
译者序 1
1.1.1 基本Web服务器模型的局限性 2
1.1.2 通过CGI实现动态HTML生成 3
1.1.3 CGI的缺点 4
1.1.4 改善基于Java的CGI:servlet 4
1.2 小结 20
习题 21
2.1.1 指令 22
第2章 JSP基础1:创建动态页面实现树据表示 22
2.1 剖析一个JSP页面 22
2.1.2 XML兼容语法 23
2.1.3 模板数据 24
2.1.4 动作 24
2.1.5 脚本元素 25
2.1.6 利用JSP处理HTML表单提交 26
2.1.7 网站个性化 43
2.2 小结 50
习题 50
第3章 JSP基础2:通用模板和服务器脚本 52
3.1 用于嵌入Java代码的脚本元素 52
3.2 创建一个简单的网上商店 57
3.2.1 向隐式对象附加属性 62
3.2.2 显示种类列表 64
3.2.3 显示给定种类中的商品的列表 65
3.3 向目录增加一个购物车 66
3.4 创建购物车 69
3.4.1 对收到的请求参数进行解码 70
3.4.2 显示订单信息 71
3.4.3 显示返回购物超链接 72
3.4.4 购物车限制 72
3.4.5 克服购物车限制 73
3.4.6 会话和JSP 78
3.4.7 使用会话属性显示购物车 81
习题 84
3.5 小结 84
第4章 CSS、JavaScript、VBScript和JSP 85
4.1 客户端执行的代码元素 85
4.1.1 CSS 87
4.1.2 JavaScript 87
4.1.3 VBScript 88
4.2 用户首选项的实现 88
4.3 创建一个用户可定制的DHTML菜单 97
4.4 小结 106
习题 106
第5章 JSP和EL 107
5.1 EL及其在JSP中的重要地位 107
5.2 EL命名变量 108
5.3.1 在模板数据中内联使用EL表达式 109
5.3.2 在属性值中使用EL表达式 109
5.3 应用EL 109
5.4 强制转换:自动类型转换 116
5.4.1 装箱和拆箱 117
5.4.2 强制转换为字符串 117
5.4.3 强制转换为数字 117
5.4.4 强制转换为字符 117
5.4.5 自动类型转换实例 118
5.5 访问对象性质和集合 120
5.6 JSP 2.0中的EL隐式对象 125
5.7.1 命名空间和EL函数 129
5.7 用户提供的EL函数 129
5.7.2 Java类的静态方法 130
5.8 小结 132
习题 133
第6章 JSP标记库和JSTL 134
6.1 JSP标记库的重要地位 134
6.2 JSP标准标记库 135
6.3 标记库剖析 136
6.3.1 标记库描述文件 136
6.3.2 web.xml部署描述文件中的taglib映射 137
6.3.3 JSTL的下载和打包 137
6.3.4 JSTL标记 138
习题 159
6.4 小结 159
第7章 JSP指令 161
7.1 指令基础 161
7.1.1 指令作为容器的指示 161
7.1.2 指令的另一种XML语法 162
7.1.3 可用的JSP指令 162
7.2 page指令 163
7.2.1 language属性 164
7.2.2 extends属性 164
7.2.3 import属性 164
7.2.7 isErrorPage属性 165
7.2.6 isELIgnored属性 165
7.2.5 info属性 165
7.2.4 session属性 165
7.2.8 errorPage属性 166
7.2.9 contentType属性 166
7.3 taglib指令 168
7.3.1 taglib指令的两种一般用法 169
7.3.2 taglib指令的属性 169
7.4 include指令 173
7.5 小结 179
习题 179
第8章 JSP标准动作 180
8.1 JSP标准动作是内置标记 180
8.2 处理JavaBean的动作 181
8.2.1 〈jsp:useBean〉标准动作 181
8.2.2 〈jsp:useBean〉与JSTL〈c:set〉的区别 193
8.3 通过〈jsp:incl ude〉包含JSP输出 194
8.4 在JSP之间传递控制 198
8.5 指定其他动作的参数 199
8.6 处理插件 199
8.6.1 〈jsp:plugin〉标准动作 200
8.6.2 〈jsp:params〉标准动作 200
8.6.3 〈jsp:fallback〉标准动作 201
8.7 特定于标记文件的标准动作 205
8.8 小结 206
习题 206
第9章 JSP和JavaBean 207
9.1 JavaBean剖析 207
9.1.1 JavaBean性质 209
9.1.2 JavaBean方法 211
9.1.3 常用的JavaBean打包 212
9.2 JavaBean与EJB的区别 227
9.3 小结 227
习题 228
第10章 错误处理 229
10.1 理解错误根源 229
10.1.1 Java语言编码中的错误 230
10.1.2 脚本元素中的错误 230
10.1.3 JSP指令和动作中的错误 233
10.1.4 JSTL错误和EL错误 246
10.2 小结 247
10.1.6 JSP模板数据中的错误 247
10.1.5 用户数据输入错误 247
习题 248
第11章 构建定制JSP标记库 249
11.1 什么是标记文件 249
11.2 一个简单的标记文件:显示今天的日期 249
11.3 标记文件的优点 250
11.3.1 代码重用 251
11.3.2 隐藏复杂性 251
11.3.3 问题分离 251
11.3.4 简单性 251
11.3.5 灵活的打包 251
11.4.1 作用域和隐式对象 252
11.4 开发标记文件 252
11.4.2 在标记文件中使用指令 254
11.4.3 体处理 259
11.4.4 属性 262
11.5 标记文件打包 272
11.6 小结 275
习题 275
第12章 JSP和servlet 276
12.1 JSP实际上就是servlet 276
12.1.1 servlet剖析 279
12.1.2 servlet的生命周期 282
12.1.3 在部署描述文件中为容器描述servlet 284
12.1.4 servlet声明 287
12.1.5 可用JSP时使用servlet 290
12.1.6 指定初始化参数 291
12.1.7 ControllerServlet中访问初始化参数 293
12.1.8 通过控制器servlet定制到来的请求的转发 295
12.1.9 转发目标 296
12.2 小结 296
习题 297
第13章 访问数据库 298
13.1 数据库简介 298
13.1.1 连接数据库 299
13.1.2 下载和安装MySQL 302
13.1.3 JDBC API 303
13.2.1 数据特征 321
13.2 构建应用 321
13.2.2 事务 322
13.2.3 对象-关系映射 323
13.3 不同类型的应用 324
13.3.1 简单应用 324
13.3.2 使用JSP和JDBC 325
13.3.3 更复杂的应用 327
13.4 使用Hibernate 328
13.5 小结 365
第14章 模型-视图-控制器 366
14.1 MVC 366
14.2 MVC和Web应用 367
14.3 小结 377
习题 378
第15章 综合项目:个性化门户网部 379
15.1 门户网站项目 379
15.1.1 RSS简介 379
15.1.2 Web服务简介 382
15.2 项目特性 384
15.2.1 用例 384
15.2.2 初始分析 384
15.3 应用设计 385
15.3.1 设计持久存储库 385
15.3.2 定义关键实体对象 387
15.3.3 设计网站控制流 395
15.4.1 目录结构 397
15.4 开发环境 397
15.4.2 构建脚本 398
15.4.3 Struts 400
15.4.4 Tiles 400
15.4.5 Log4j 401
15.4.6 Rome 403
15.4.7 Apache Axis 405
15.5 应用 407
15.5.1 视图 407
15.5.2 控制器 414
15.5.3 运行门户应用 423
15.6 小结 427
习题 427