1.1 基础知识 1
1.1.1 Internet 1
第一部分 新手上路 1
第1章 ColdFusion简介 1
1.1.2 Internet应用程序 4
1.1.3 DNS 5
1.1.4 内部网和外部网 6
1.1.5 Web服务器 7
1.1.7 Web浏览器 9
1.1.6 Web页 9
1.1.8 URL 12
1.2 理解ColdFusion 13
1.2.2 理解Web应用程序 14
1.2.1 动态页面的优点 14
1.2.3 什么是ColdFusion 15
1.3 ColdFusion深入解释 16
1.2.4 ColdFusion和内部网/外部网 16
1.3.1 ColdFusion应用程序服务器 17
1.4 链接到外部应用程序 18
1.3.2 ColdFusion标记语言 18
1.5 由ColdFusion驱动 19
1.4.2 超越Web 19
1.4.1 扩展ColdFusion 19
2.3.1 基于Intel的系统 21
2.3 检查硬件 21
第2章 安装ColdFusion和ColdFusion Studio 21
2.1 ColdFusion的两个版本:专业版和企业版 21
2.2 安装前核对清单 21
2.5.1 Windows 22
2.5 检查操作系统 22
2.3.2 Sun SPARC系统 22
2.3.3 HP系统 22
2.4 选择硬件 22
2.5.2 Linux 23
2.6 选择操作系统 24
2.5.4 HP-UX 24
2.5.3 Solaris 24
2.7 检查Web服务器 25
2.8 最终的安装核对清单 26
2.9.1 在Windows上启动安装 27
2.9 安装ColdFusion 5 27
2.9.2 在Linux上安装ColdFusion 32
2.9.3 在Solaris上安装ColdFusion 34
2.9.4 在HP-UX上安装ColdFusion 36
2.10 安装ColdFusion Studio 37
2.9.6 成功 37
2.9.5 验证安装 37
2.11 ColdFusion Studio逐步安装指南 38
2.12 安装本书实例应用程序 40
2.13 ColdFusion Studio针对ColdFusion 5的更新 41
3.1.1 数据库定义 42
3.1 数据库基础 42
第3章 构建数据库 42
3.1.4 数据类型 43
3.1.3 澄清数据库相关术语 43
3.1.2 数据库的应用场合 43
3.2 数据库的使用 45
3.3 理解关系数据库 48
3.3.1 主键和外键 49
3.3.3 多表关系 50
3.3.2 不同类型的关系 50
3.3.4 索引 51
3.3.5 使用索引 53
3.4.1 基于共享文件的数据库 54
3.4 理解不同类型的数据库应用程序 54
3.3.6 对多列进行索引 54
3.4.2 基于客户机/服务器的数据库 55
3.4.3 使用哪一种数据库产品 56
3.5.1 Films表 57
3.5 构建OWS数据库表 57
3.5.3 Directors表 58
3.5.2 Expenses表 58
3.5.5 Actors表 59
3.5.4 FilmsDirectors表 59
3.5.7 FilmsRatings表 60
3.5.6 FilmsActors表 60
3.5.9 Merchandise表 61
3.5.8 Contacts表 61
3.5.11 MerchandiseOrdersItems表 62
3.5.10 MerchandiseOrders表 62
4.1 登录和注销ColdFusion Administrator 64
第4章 访问ColdFusion Administrator 64
4.2.1 创建一个ODBC数据源 66
4.2 使用ColdFusion Administrator 66
4.2.2 定义邮件服务器 70
4.2.4 启用调试功能 72
4.2.3 标识管理员的电子邮件地址 72
5.1 准备学习ColdFusion 75
第5章 ColdFusion预览 75
5.2 使用应用程序向导 76
5.2.1 记录查看器向导 77
5.2.2 邮件列表向导 81
5.2.3 Data Drill-Down Wizard 82
5.3 自行尝试 85
6.2 ODBC入门 88
6.1 SQL入门 88
第6章 SQL简介 88
6.2.1 应付数据库系统的差异 89
6.2.2 理解ODBC和ColdFusion 90
6.3.1 Microsoft Query 91
6.3 准备编写SQL查询 91
6.3.2 查询工具 93
6.4 创建查询 94
6.5 查询结果排序 95
6.6 过滤数据 96
6.6.2 过滤多列 97
6.6.1 过滤单列 97
6.6.4 求值优先顺序 98
6.6.3 AND和OR运算符 98
6.6.8 测试小于:< 99
6.6.7 测试不相等性:<> 99
6.6.5 WHERE条件 99
6.6.6 测试相等性:= 99
6.6.13 EXISTS 100
6.6.12 BETWEEN 100
6.6.9 测试小于或等于:<= 100
6.6.10 测试大于:> 100
6.6.11 测试大于或等于:>= 100
6.6.16 LIKE 101
6.6.15 IS NULL和IS NOT NULL 101
6.6.14 IN 101
7.1.1 使用INSERT语句 103
7.1 添加数据 103
第7章 SQL数据处理 103
7.1.2 理解INSERT 104
7.2 修改数据 105
7.2.2 进行全局更新 106
7.2.1 理解UPDATE 106
7.3 删除数据 107
8.1 理解ColdFusion Studio 109
第8章 ColdFusion Studio简介 109
8.1.2 ColdFusion Studio入门 110
8.1.1 运行ColdFusion Studio 110
8.2.1 使用彩色编码编辑 112
8.2 使用编辑器 112
8.1.3 操作文件 112
8.2.2 使用工具栏 113
8.2.4 浏览Web页 115
8.2.3 使用拆分屏幕编辑器 115
8.2.6 使用鼠标右键 116
8.2.5 使用多文档界面 116
8.3.3 使用Tag Insight和Function Insight 118
8.3.2 使用Tag Tips 118
8.3 获取帮助 118
8.3.1 使用Tag Completion 118
8.4 使用Tag和表达式 120
8.3.5 使用联机帮助 120
8.3.4 使用编辑对话框帮助 120
8.4.2 使用表达式构建器 121
8.4.1 使用Tag Chooser 121
8.5.1 连接ColdFusion Server 122
8.5 访问ColdFusion应用程序服务器服务 122
8.5.3 访问服务器数据源 123
8.5.2 访问服务器文件 123
8.5.4 配置开发映射 124
8.6 使用SQL查询构建器 125
8.6.1 在SQL查询构建器中漫游 126
8.6.2 使用工具栏 127
8.6.3 生成SQL SELECT语句 128
8.6.4 测试SQL语句 129
8.6.5 使用查询构建器SQL语句 133
8.6.6 生成其他SQL语句 134
8.7 请使用Studio 136
9.1.1 创建模板 137
9.1 运用模板 137
第二部分 使用ColdFusion 137
第9章 使用ColdFusion 137
9.1.4 对模板的解释 138
9.1.3 执行模板 138
9.1.2 保存模板 138
9.2 使用函数 139
9.3 使用变量 144
9.3.2 使用前缀 149
9.3.1 变量命名 149
9.4.1 构建表达式 150
9.4 使用表达式 150
9.4.2 什么时候使用#,什么时候不使用 151
9.5.1 列表 152
9.5 使用ColdFusion数据类型 152
9.5.2 数组 154
9.5.3 结构 156
9.6 注释您的代码 157
10.1.1 If语句 160
10.1 运用条件处理 160
第10章 CFML基础 160
10.1.2 Switch语句 175
10.2.1 Index循环 177
10.2 使用循环 177
10.2.2 List循环 179
10.2.3 嵌套循环 180
10.3 复用代码 182
10.4 再论变量 185
11.1 访问数据库 186
第11章 创建数据驱动页 186
11.1.2 动态网页 187
11.1.1 静态网页 187
11.1.3 理解数据驱动模板 188
11.1.4 动态的优点 191
11.2.1 用列表显示数据 193
11.2 显示数据库查询结果 193
11.2.2 用表格显示数据 195
11.3 使用查询变量 200
11.4 结果输出分组 203
11.5 使用数据挖掘 206
11.5.1 实现数据挖掘接口 207
11.5.2 用框架显示数据 217
11.6 调试动态数据库查询 221
12.2 创建表单 223
12.1 使用表单 223
第12章 ColdFusion表单 223
12.2.1 使用HTML表单标记 224
12.2.2 表单提交错误消息 225
12.3.1 处理文本提交 226
12.3 处理表单提交 226
12.3.2 处理复选框和单选钮 227
12.3.3 处理列表框 232
12.3.4 处理文本区 234
12.3.5 处理按钮 238
12.4 创建动态SQL语句 240
12.5 构建真正的动态语句 244
12.5.1 理解动态SQL 247
12.5.2 连结SQL从句 249
12.6 创建动态搜索屏幕 253
第13章 表单数据校验 256
13.1 理解表单校验 256
13.2 使用服务器端校验 257
13.1.2 理解每个选项的优缺点 257
13.1.1 比较服务器端和客户端校验 257
13.2.1 使用基本的服务器端校验 258
13.2.2 使用ColdFusion嵌入表单校验 261
13.3.1 理解客户端校验 264
13.3 使用客户端校验 264
13.3.2 使用〈CFFORM〉 265
13.3.3 使用〈CFINPUT〉 268
13.3.4 使用〈CFINPUT〉校验选项 271
13.4 总结 275
14.1.1 创建一个添加记录的表单 276
14.1 用ColdFusion添加数据 276
第14章 用表单添加和修改数据 276
14.1.2 处理添加 280
14.2 〈CFINSERT〉简介 283
14.2.1 控制〈CFINSERT〉表单字段 284
14.3.1 构建一个数据更新表单 288
14.3 用ColdFusion更新数据 288
14.2.2 为多个INSERT收集数据 288
14.2.3 〈CFINSERT〉与SQL INSERT的对比 288
14.3.2 处理更新 293
14.4 〈CFUPDATE〉简介 294
14.5 用ColdFusion删除数据 295
14.6 复用表单 296
14.7 创建一个完整的应用程序 301
15.2 理解什么易犯错 308
15.1 调试ColdFusion应用程序 308
第15章 调试与疑难解答 308
15.3 调试Web服务器配置问题 309
15.4 调试ODBC驱动程序的错误 310
15.4.3 试图访问一个数据仓库时接收登录或权限错误 311
15.4.2 获取ODBC错误消息File Not Found 311
15.4.1 获取ODBC错误消息Data Source Not Found 311
15.5 调试SQL语句或逻辑错误 312
15.4.4 获取ODBC错误消息Unknown Table 312
15.6 调试ColdFusion语法错误 314
15.8 使用文档校验器 316
15.7 检查变量内容 316
15.9.1 图像未显示 317
15.9 调试URL和路径问题 317
15.10 调试表单问题 318
15.9.2 传递未处理的参数 318
15.11 使用ColdFusion调试选项 319
15.12.1 调试器工具栏 320
15.12 使用Studio远程调试器 320
15.12.2 使用调试器 321
15.12.3 自定义调试器 324
15.14 预防问题 325
15.13 使用ColdFusion日志文件 325
16.2.1 文档窗口 329
16.2 UltraDev环境 329
第16章 Macromedia Dreamweaver UltraDev与ColdFusion的配合使用 329
16.1 概述 329
16.2.2 数据绑定和服务器行为面板 330
16.3.1 创建自己的站点 332
16.3 为ColdFusion配置UltraDev 332
16.3.3 建立数据源 333
16.3.2 将ColdFusion设成自己的应用程序服务器 333
16.4.1 构建表单页面 334
16.4 构建表单、结果和细节页面 334
16.4.2 构建结果页面 336
16.4.3 构建细节页面 339
16.5 注意由UltraDev生成的ColdFusion代码 342
17.1.1 定义项目 345
17.1 着手自己的应用程序 345
第三部分 构建ColdFusion应用程序 345
第17章 计划应用程序 345
17.1.3 发现事实 348
17.1.2 了解工作人员 348
17.2.1 设计文档 350
17.2 计划开发过程 350
17.2.2 计划测试阶段 351
17.3.3 注释样式 353
17.3.2 包括文件和自定义标记 353
17.3 开始工作 353
17.3.1 图示页面流程 353
17.3.5 注意目录结构 354
17.3.4 命名约定 354
17.3.6 目标转移和特色延迟 355
第18章 运用项目 356
18.1.1 Studio的项目标签简介 357
18.1 使用项目 357
18.1.3 编辑项目中的文件 358
18.1.2 创建Studio项目 358
18.2 发掘项目文件夹的最大潜力 359
18.1.4 打开现有项目 359
18.2.1 物理文件夹 360
18.2.3 运用远程文件 363
18.2.2 虚拟文件夹 363
18.3.1 默认资源过滤器 364
18.3 用项目资源过滤文件 364
18.3.3 调整项目的默认设置 365
18.3.2 添加自己的资源过滤器 365
18.4.2 校验项目的所有链接 366
18.4.1 项目范围内的查找与替换 366
18.4 用项目简化代码维护 366
18.5 部署项目 367
18.5.1 告诉Studio把文件部署到何处 368
18.5.2 部署向导 369
18.5.3 对源代码进行编码以确保安全性 372
18.5.4 创建部署脚本 375
第19章 Web应用程序框架入门 378
19.1.1 〈CFERROR〉标记入门 383
19.1 自定义错误消息的外观 383
19.1.3 创建自定义的请求错误页面 384
19.1.2 请求和异常错误模板 384
19.1.4 其他ERROR变量 387
19.1.6 创建自定义的校验错误页面 388
19.1.5 创建自定义的异常错误页面 388
19.2.1 什么是应用程序变量 390
19.2 使用应用程序变量 390
19.2.3 介绍〈CFAPPLICATION〉标记 391
19.2.2 何时使用应用程序变量 391
19.2.4 启用应用程序变量 392
19.2.6 让应用程序变量运行起来 393
19.2.5 使用应用程序变量 393
19.3 通过锁定预防内存崩溃 396
19.4.2 使用ColdFusion Administrator调节超时 398
19.4.1 使用APPLICATIONTIMECUT调节超时设定值 398
19.4 应用程序变量超时 398
20.1.1 维持状态的问题 400
20.1 强调Web的无状态特性 400
第20章 运用会话 400
20.1.3 选择要用的变量类型 401
20.1.2 ColdFusion提供的方案 401
20.2 用cookie记忆首选项 402
20.2.2 简单练习 403
20.2.1 cookie作用域简介 403
20.2.3 使用cookie 404
20.2.4 使用〈CFCOOKIE〉获取更多的控制 406
20.3 使用客户机变量 409
20.2.6 cookie的限制 409
20.2.5 同其他应用程序共享cookie 409
20.3.2 启用客户机变量 410
20.3.1 客户机变量如何工作 410
20.3.3 使用客户机变量 411
20.3.4 删除客户机变量 415
20.3.5 调节客户机变量的存储方式 416
20.3.6 使用客户机变量而不需要cookie 419
20.3.7 在客户机变量中保存复杂的数据类型 420
20.4.2 启用会话变量 421
20.4.1 何谓会话变量 421
20.4 使用会话变量 421
20.4.4 为多页数据输入使用会话变量 422
20.4.3 使用会话变量 422
20.4.7 再论锁定 436
20.4.6 使用会话变量而不需要cookie 436
20.4.5 其他会话变量的例子 436
20.4.8 会话何时中止 437
第21章 ColdFusion的安全问题 440
21.2 决定要保护的对象 442
21.1 用ColdFusion控制访问 442
21.2.1 用会话变量进行身份验证 443
21.2.2 创建登录页面 445
21.2.3 验证登录名称和密码 447
21.2.4 根据登录进行个性化 449
21.2.5 传递参数必须谨慎 451
21.3 其他情况 456
22.1.2 模块化的优点 458
22.1.1 基本思想 458
第22章 构建可复用组件 458
22.1 CFML自定义标记简介 458
22.2.1 在Developers Exchange查找标记 459
22.2 如何使用自定义标记 459
22.2.2 如何安装一个自定义标记 460
22.2.3 使用自定义标记 461
22.2.4 修改自定义标记搜索路径 464
22.3.1 〈CFMODULE〉标记简介 466
22.3 用〈CFMODULE〉控制模板位置 466
22.2.5 将自定义标记放在当前目录 466
22.3.2 按名称调用模块 467
22.3.3 按模板位置调用模块 468
22.4.1 编写您的第一个自定义标记 469
22.4 编写用于显示信息的自定义标记 469
22.4.2 ATTRIBUTES作用域入门 470
22.4.4 用〈CFPARAM〉建立默认值 472
22.4.3 使属性成为可选或必需 472
22.4.5 确定自己是为谁而开发 474
22.4.6 查询和显示输出 475
22.5 用于处理数据的自定义标记 479
22.4.7 自定义标记同〈CFINCLUDE〉的对比 479
22.5.2 将变量返回调用模板 480
22.5.1 CALLER作用域简介 480
22.5.4 〈CFPARAM〉与TYPE=“VariableName”的配合使用 483
22.5.3 变量名作为标记属性使用 483
22.5.5 动态设置一个变量的问题 484
22.6 用于封装事务规则的自定义标记 486
22.7.1 定义行动 487
22.7 用于代表对象的自定义标记 487
22.7.2 添加与行动有关的标记属性 488
22.8 面向常规用途的自定义标记 494
22.8.1 共享自定义标记 498
22.9.1 嵌套自定义标记的联合 499
22.9 有关自定义标记的其他话题 499
22.8.2 为自定义标记设计的Studio对话框 499
22.9.3 REQUEST作用域 500
22.9.2 用ATTRIBUTECOLLECTION传递属性 500
23.1.1 从用户的角度看问题 504
23.1 易用性问题 504
第23章 改进用户体验 504
23.1.2 减轻浏览器的负担 505
23.2 记忆设置 508
23.3.1 Next N接口的优点 509
23.3 创建Next N记录接口 509
23.2.1 记忆用户和密码 509
23.2.2 要记忆的其他有用设置 509
23.2.3 避免Big Brother的影响 509
23.3.3 创建基本接口 510
23.3.2 何时创建一个Next N接口 510
23.3.4 改变行颜色以改善可读性 514
23.3.5 让用户逐页浏览 517
23.3.6 添加一个Show All选项 519
23.4 用CFFLUSH立即返回页面输出 521
23.4.1 何时清除缓冲区 522
23.4.2 是例外,而不是规则 522
23.4.3 〈CFFLUSH〉标记简介 522
23.4.4 为大型页面清空输出缓冲区 523
23.4.5 为长时间运行的进程清空输出缓冲区 523
23.4.6 何时不能清空缓冲区 529
第24章 改进性能 532
24.1 ColdFusion Administrator中的选项 532
24.2 用缓存改进查询性能 532
24.2.1 理解查询缓存 533
24.2.2 使用缓存的查询 534
24.2.3 程序化刷新一个缓存的查询 536
24.2.4 限制缓存查询的数量 538
24.2.5 控制同时取得的记录数量 538
24.3.1 〈CFCACHE〉标记简介 539
24.3.2 客户端页面缓存 539
24.3 缓存页面输出 539
24.3.3 服务器端页面缓存 541
24.3.4 ColdFusion优化的缓存 544
24.3.5 清空页面缓存 544
24.4.1 理解问题所在 546
24.4.2 自动空白控制 546
24.4 控制空白 546
24.4.3 用〈CFSILENT〉压缩空白输出 547
24.4.4 用〈CFSETTING〉压缩指定的空白 548
第25章 用客户端Java增强表单 550
25.1 关于ColdFusion的基于Java表单控件 550
25.2 使用〈CFTREE〉 551
25.2.1 使用查询生成树项目 554
25.2.2 使用树进行数据输入 557
25.2.3 控制外观与感觉 561
25.2.4 假如控件没有装载 562
25.3 使用CFGRID 562
25.3.1 添加〈CFGRIDCOLUMN〉标记 565
25.3.2 制作可编辑的网格 567
25.3.3 条件彩色编码 574
25.3.4 在网格中显示图像 577
25.3.5 有关〈CFGRIDROW〉标记 579
25.4 使用〈CFSLIDER〉 580
25.5 关于〈CFTEXTINPUT〉和〈CFAPPLET〉 582
25.5.1 关于〈CFTEXTINPUT〉 582
25.5.2 关于〈CFAPPLET〉 583
26.1.1 Flash Component Kit简介 584
26.1 使用Flash Component Kit 584
26.1.2 安装Component Kit 584
第26章 同Macromedia Flash的集成 584
26.1.3 使用Calendar组件 585
26.1.4 使用Calculator组件 593
26.1.5 使用Navigation Bar组件 596
26.1.6 使用IE Cascading Menu组件 601
26.2 在ColdFusion页内使用自己的Flash电影 606
26.2.2 Flash文件类型 607
26.2.3 在页面中插入Flash电影 607
26.2.1 Flash电影的概念 607
26.2.4 使用一个自定义标记包括Flash电影 610
26.2.5 将变量从ColdFusion载入Flash电影 612
26.2.6 通过fscommand同基层的Web页交互 618
26.3 其他主题 622
27.1 用图表增强应用程序 623
27.2 〈CFGRAPH〉简介 623
第27章 图表制作 623
27.3 图表类型 628
27.4 〈CFGRAPHDATA〉简介 630
27.5 文件格式 632
27.6 交互式图表 632
27.7 构建一个图表应用程序 636
28.1 从ColdFusion发送电子邮件 641
28.1.1 〈CFMAIL〉标记简介 641
第28章 与电子邮件交互 641
28.1.2 在Administrator中指定一个邮件服务器 642
28.1.3 发送电子邮件 643
28.1.4 发送数据驱动邮件 649
28.1.5 发送HTML格式的邮件 656
28.1.6 添加自定义邮件标题 660
28.1.7 添加附件 662
28.1.8 覆盖默认的邮件服务器设置 662
28.2 用ColdFusion收取电子邮件 663
28.2.1 〈CFPOP〉标记简介 663
28.2.2 收取邮件列表 666
28.2.3 收取和删除邮件 671
28.2.4 收取附件 673
28.2.5 创建自动POP代理 679
29.1 构建电子商务站点 684
29.1.1 常见商务站点元素 684
第29章 网上商务 684
29.1.2 使用一个安全服务器 685
29.2 创建店面 686
29.2.1 显示单独的货物 686
29.2.2 将货物收集到商店 688
29.3 创建购物车 690
29.3.1 保存购物车信息 690
29.3.2 构建一个购物车 692
29.4 付款处理 700
29.4.1 付款处理方案 701
29.4.2 处理一笔付款 701
29.4.3 处理一份完整的订单 704
29.4.4 购物车结账 707
29.5 其他同商务相关的问题 712
29.5.1 订单追踪 712
29.5.4 库存跟踪 713
29.5.3 取消、退货和退款 713
29.5.5 报表 713
29.5.2 订单完成 713
第30章 ColdFusion Server配置 715
30.1 ColdFusion Administrator 715
第四部分 高级ColdFusion 715
30.2 Server标签 716
30.2.1 服务器设置 716
30.2.2 数据源 727
30.2.3 调试设置 733
30.2.4 自动化任务 734
30.2.5 扩展 736
30.3 Security标签 742
30.3.1 基本安全 742
30.3.2 高级安全 744
30.4 工具标签 750
30.4.1 日志和统计 751
30.4.2 系统监视 755
30.4.3 存档和部署 757
31.1 高级SQL主题 761
31.1.1 用DISTINCT获取惟一记录 761
第31章 SQL和查询的更多话题 761
31.1.2 用集合函数汇总数据 763
31.1.3 用联结选择相关数据 770
31.1.4 子查询 777
31.1.5 用UNION合并记录集 784
31.1.6 运用NULL值 786
31.1.7 运用日期值 788
31.1.8 理解视图 791
31.1.9 用标量函数处理数据 792
31.2 其他〈CFQUERY〉主题 794
31.2.1 “查询的查询” 794
31.2.2 参数化查询 809
31.2.3 连接字符串 814
31.2.4 程序化构建查询结果 821
31.3 使用数据库事务 821
31.3.1 使用〈CFTRANSACTION〉标记 822
31.3.2 事务处理和CFML错误控制 823
31.3.3 事务处理和存储过程 824
32.1 为何要使用存储过程 825
32.1.1 使用存储过程的优点 825
第32章 运用存储过程 825
32.1.2 存储过程同CFML自定义标记的对比 827
32.2 从ColdFusion模板调用存储过程 827
32.2.1 使用〈CFSTOREDPROC〉标记 828
32.2.2 返回记录集的存储过程 831
32.2.3 取用参数和返回状态代码的存储过程 836
32.2.4 用〈CFQUERY〉代替〈CFSTORED-PROC〉来调用过程 846
32.3 创建存储过程 849
32.3.1 用Microsoft SQL Server创建存储过程 850
32.3.2 用Oracle创建存储过程 854
32.3.3 用Sybase创建存储过程 860
33.1 在错误发生时将其捕捉 861
33.1.1 何谓异常 861
第33章 错误控制 861
33.1.2 〈CFTRY〉和〈CFCATCH〉简介 862
33.1.3 基本异常处理 863
33.1.4 理解是什么导致了错误 867
33.1.5 编写解决错误的模板 870
33.1.6 编写从错误恢复的模板 875
33.1.7 嵌套的〈CFTRY〉块 877
33.1.8 决定不处理一个异常 880
33.1.9 捕捉高级异常类型 883
33.2 产生和捕捉您自己的错误 887
33.3 异常和数据库事务处理 894
34.1 关于ColdFusion和非HTML内容 896
34.1.1 关于MIME内容类型 896
第34章 生成非HTML内容 896
34.1.2 浏览器如何处理MIME类型 897
34.1.3 〈CFCONTENT〉标记简介 898
34.1.4 试验纯文本 899
34.2 逗号分隔文本 900
34.2.1 生成逗号分隔的文本 900
34.2.2 为IE添加一个Content-Disposition标题 901
34.2.3 用〈CFHTTP〉获取逗号分隔的文本 903
34.3 生成Excel文件 904
34.3.1 用制表位分隔的文本创建电子表格 904
34.3.2 用HTML创建电子表格 906
34.3.3 创建Excel文件的其他选项 910
34.4 生成Word文件 910
34.4.1 用RTF创建文档 911
34.4.2 创建Word文件的其他选项 913
34.5 保存媒体文件 914
34.5.1 将ColdFusion转换成图像服务器 914
34.5.2 其他用法 919
34.6.1 基本概念 921
34.6.2 安装UP.SDK 921
34.6 无线应用入门 921
34.6.3 WML速成 922
34.6.4 您的第一张WML卡片 923
34.6.5 一个卡片组中的多张卡片 926
34.6.6 创建由数据驱动的卡片 927
34.6.7 在记录间浏览 928
34.6.8 响应表单输入 930
34.6.9 学习更多的知识 932
35.1 运用操作系统 934
35.2 本地文件处理 934
第35章 同操作系统交互 934
35.3 访问本地文件系统 936
35.3.1 读取和写入文件 936
35.3.2 复制、移动、重命名和删除文件 938
35.4 用〈CFFILE〉标记上传文件 939
35.5 使用〈CFEXECUTE〉 955
35.6 用〈CFREGISTRY〉同系统注册表交互 957
35.7 用〈CFDIRECTORY〉操纵目录 961
35.8 总结 966
第36章 用Verity进行全文检索 967
36.1 认识Verity 967
36.1.1 用Verity搜索不同类型的文件 968
36.1.2 ColdFusion同其他搜索引擎的集成 969
36.2.1 为文档新建一个集合 970
36.2.2 新建一个Verity集合 970
36.2 为文档创建一个搜索工具 970
36.2.3 指定语言 971
36.2.4 创建一个可实际使用的搜索接口 972
36.2.5 交互式索引文件 985
36.3 索引SQL数据 986
36.3.1 不用Verity进行操作 987
36.3.2 索引表数据:利用Verity恢复 990
36.3.3 Verity搜索同SQL查询的动态合并 997
36.3.4 理解Verity和表的键值 999
36.3.5 搜索多个集合 1001
36.4 维护集合 1004
36.5 用〈CFCOLLECTION〉管理集合 1005
36.5.1 优化Verity集合 1006
36.5.2 修复或删除集合 1006
36.5.3 程序化创建一个集合 1007
36.6.1 ColdFusion Administrator中的K2服务器设置 1009
36.6.2 启动Verity K2服务器 1009
36.6 扩展Verity的能力 1009
36.6.3 用Verity K2服务器进行搜索 1011
36.7 理解Verity的搜索语法 1011
37.1 理解事件调度 1013
37.2 ColdFusion事件调度同操作系统/数据库事件调度的对比 1013
第37章 事件调度 1013
37.3 用ColdFusion Administrator创建、修改和删除调度的任务 1014
37.3.1 使用调度任务页创建任务 1015
37.3.2 在调度任务页中修改和删除调度任务 1018
37.4 用〈CFSCHEDULE〉标记创建、修改和删除调度任务 1019
37.4.1 更新Verity集合 1019
37.4.2 使用〈CFSCHEDULE〉标记 1020
37.4.3 用〈CFSCHEDULE〉标记修改和删除调度任务 1022
37.4.4 ColdFusion Studio中的〈CFSCHEDULE〉按钮 1022
37.5 构建一个自动促销电子邮件应用程序 1023
37.5.1 构建电子邮件应用程序 1024
37.5.2 构建调度事件 1025
第38章 代码管理 1027
38.1 编码标准 1027
38.1.1 在Select语句中避免滥用子查询 1027
38.1.2 记住锁定所有共享作用域的变量 1027
38.1.3 不要随每个请求重新分配变量值 1028
38.1.4 不要用If语句测试变量是否存在 1029
38.1.5 用〈CFSWITCH/CFCASE〉代替〈CFIF〉 1029
38.1.6 不要滥用#符号 1030
38.1.7 避免滥用〈CFOUTPUT〉标记 1030
38.1.8 注释、注释再注释 1031
38.2 文档 1031
38.3.1 计划版本控制 1032
38.3 版本控制 1032
38.3.2 版本控制系统 1033
38.3.3 Merant PVCS及其与ColdFusion Studio的集成 1036
38.3.4 多用户以及同ColdFusion Studio的集成 1036
39.1 为什么要使用一种开发方法 1038
39.2 Fusebox 1038
第39章 开发方法论 1038
39.2.1 Fusebox如何工作 1039
39.2.2 用Fusebox构建一个简单的联系人管理器 1041
39.2.4 缺点 1046
39.3 cfObjects 1046
39.2.3 优点 1046
39.3.1 使用cfObjects 1047
39.3.2 实例 1050
39.3.3 优点 1058
39.3.4 缺点 1058
39.4 Blackbox、Smart_Objects和Switch_Box 1059
39.4.1 Blackbox 1059
39.4.2 SmartObjects 1060
39.4.3 Switch_Box 1061
39.5 所有开发方法都要注意的问题 1062
39.6 总结 1063
附录 1065
附录A ColdFusion标记索引 1065
附录B ColdFusion函数索引 1068
附录C ColdFusion特殊变量和结果代码 1080
附录D Verity搜索语言参考 1093
附录E 实例应用程序数据文件 1099