第一部分 使用Ajax和Java编程 2
第1章 Ajax:勇闯新世界 2
1.1 Web开发简史:“经典”模型 2
1.2 经典Web的问题 7
1.3 走进Ajax 9
1.4 为什么说Ajax是一场革命?通向RIA之路 13
1.5 第一个Ajax示例 15
1.6 Ajax工具包的选择 22
1.7 Ajax的替代方法 22
1.8 小结 25
第2章 Ajax的支柱 27
2.1 JavaScript基础 27
2.1.1 变量、作用域和函数 29
2.1.2 关键字 31
2.1.3 空白 32
2.1.4 分号 32
2.1.5 注释 33
2.1.6 字面量、数组和对象初始化程序 33
2.1.7 数提类型 34
2.1.8 匿名函数 39
2.1.9 内存管理 40
2.2 面向对象的JavaScript 40
2.3 DOM和脚本编程:在运行中操纵内容 46
2.4 XML:描述语言的语言 51
2.5 在JavaScript中解析XML 53
2.6 CSS 60
2.7 小结 68
第3章 服务器端 69
3.1 项目开发环境 69
3.2 Ant:以开源的方式构建Java应用程序 70
3.3 Apache Tomcat 77
3.4 Web应用、servlet、JSP和在服务器上解析XML 80
3.4.1 Web应用 80
3.4.2 servlet 85
3.4.3 JSP 87
3.4.4 在服务器上解析XML 89
3.5 安装和使用应用程序 93
3.6 小结 94
第二部分 开发项目 96
第4章 Karnak:输入前提示 96
4.1 需求和目标 96
4.2 如何实现 97
4.3 最终呈现 102
4.4 研究解决方案 103
4.4.1 客户端代码 104
4.4.2 服务器端代码 113
4.5 推荐练习 120
4.6 小结 121
第5章 InstaMail:基于Ajax的webmail客户端 122
5.1 需求和目标 122
5.2 如何实现 123
5.3 最终呈现 126
5.4 研究解决方案 129
5.4.1 客户端代码 131
5.4.2 服务器端代码 152
5.5 推荐练习 174
5.6 小结 175
第6章 AjaxReader:Ajax图书必备内容 176
6.1 需求和目标 176
6.2 如何实现 177
6.3 最终呈现 179
6.4 研究解决方案 182
6.4.1 客户端代码 183
6.4.2 服务器端代码 201
6.5 推荐练习 219
6.6 小结 219
第7章 PhotoShare:分享图片 220
7.1 需求和目标 220
7.2 如何实现 221
7.3 最终呈现 225
7.4 研究解决方案 228
7.4.1 客户端代码 229
7.4.2 服务器端代码 258
7.5 推荐练习 272
7.6 小结 273
第8章 Organizer:管理个人信息 274
8.1 需求与目标 274
8.2 如何实现 275
8.2.1 Prototype 276
8.2.2 WebWork 277
8.2.3 HSQLDB 280
8.2.4 Spring JDBC 280
8.3 最终呈现 281
8.4 研究解决方案 284
8.4.1 客户端代码 286
8.4.2 服务器端代码 299
8.5 推荐练习 310
8.6 小结 310
第9章 AjaxChat:以Ajax方式聊天 311
9.1 需求和目标 311
9.2 如何实现 312
9.3 最终呈现 322
9.4 研究解决方案 324
9.4.1 客户端代码 326
9.4.2 服务器端代码 339
9.5 推荐练习 359
9.6 小结 360
第10章 AJAX勇士游戏:回到未来 361
10.1 需求和目标 361
10.2 如何实现 362
10.2.1 多用途的函数和集中式Ajax 362
10.2.2 JSON 365
10.3 最终呈现 367
10.4 研究解决方案 370
10.4.1 客户端代码 373
10.4.2 服务器端代码 396
10.5 推荐练习 423
10.6 小结 424
附录A XMLHttpRequest对象 425
附录B 库、网站和图书 429