Unit 2:Cold Fusion 简介

静态页面和动态页面

在最初的互联网上,网页是静止的,所谓静止就是指 Web 服务器只是简单地把存储的文本文件和图形文件传给用户,只有编辑者使用文字处理器和图形编辑器对他们进行修改,它们才会发生改变。

随着 Netscape 推出 JavaScript 和 Sun 推出 Java,这两大语言技术让网页浏览者可以见到页面有了一些变化,例如,一个 JavaScript 程序可以执行一个计算器的功能,用来

存储和计算数值,并在屏幕上显示结果 。Java 的功能更加强大,因为它具有丰富的环境和快速、表现力强的语言。

然而服务器端仍旧是没有动态变化,服务器端提供的程序和文本文件和图形文件一样

没有变化。但是不久,服务器可以通过 Common Gateway Interface(CGI)、Active Server Pages(ASP)、ISAPI 应用程序等技术给浏览器传送用户定制的内容,Coldfusion 也是其中的一种动态发布技术,并且功能强大,使用简单。如果你是一个即将在网上建立动态 WEB 应用和交互 WEB 站点的专业开发者,Allaire 公司的 Cold Fusion 应是你可以选择的一个很好的开发工具。它提供集浏览器、服务器和数据库技术于一体的强大的 WEB 应用。

利用 Coldfusion 发布动态信息的原理如下:

Unit 2:Cold Fusion 简介 - 图1

  1. 用户点击提交键或超级链,用户的 Web 浏览器通过Internet 或Intranet

    发送HTTP 请求到 Web 服务器。

  2. Web 服务器通过服务器的应用程序接口将用户请求和相应的页交给 Cold

    Fusion 服务器。

  3. Cold Fusion 从用户端读取用户数据并处理其中的 CFML(Cold Fusion

    制标语言),

基于 CFML,服务器可通过 Cold Fusion 应用程序接口或通过 COM/DCOM.建立与数据库服务器、文件系统、SMTP 系统等的联系。

  1. Cold Fusion 动态地建立一个 Web 页,并将此页返回给 Web 服务器。5. Web

    服务器返回标准的 HTML 页给用户浏览器。

Cold Fusion 特点:

这里列出的特点是结合用户在实际应用中所关心的几个方面提出的,

  1. 快速开发性:利用 Cold Fusion

    强大的可视化工具、直接的编程环境和便于管理的应用服务器,可以快速、简单地建立复杂的应用程序。

  2. 开放的综合性:Cold Fusion

    提供数据库、邮件服务器、文件目录、XML、COM、CORBA 等服务器系统的支持。

  3. 安全性:

    对服务器的开发和管理进行访问控制,利用高级安全特性避免运行时的其他应用。使用 SSL 对远程文件,数据传输进行加密。

  4. 高效率:

    程序员可指定在多次调用数据库时,数据库保持打开状态多长时间。缓

存经常使用的查询结果,在保证数据一致性的同时减少数据库通信。

  1. **出错处理:**当 Cold Fusion

    不能找到模板文件中指定的变量时,他提供详细的错误信息和原因。

  2. **输入合法性检查:**在输入表格中用一隐含域实现输入合法性检查。一些标准的合

法性检查是数据类型、范围等。

  1. **可扩展性:**利用 CFML、C\C++、COM、CORBA、JavaScript、VBScript

    建立自己的部件和标识。通过<CFX_XXX>调入页中。

  2. **多种数据源:**本身带有 Oracle 和 Sybase 的连接驱动,可以和任何

    ODBC 兼容的数据库连接,通过 OLE-DB 与 Exchange、 Lotus Notes 等连接。

  3. **全文索引:**利用内嵌的 Verity Search 97

    全文索引非结构化的数据、标准文本及桌面文件。

  4. **源代码重用:**可将经常使用的代码保存为 CFML 模块或 CFX

    ,日后重复应用于其他应用和界面中。

  5. **Email:**数据库输出不仅能送至 Web 浏览器,还能作为 email

    发给客户。

  6. **Cookies:**提供一种途径,可在客户端存储信息以做将来检索用。

  7. **与协议的结合性:**支持多种网络协议,如FTP、HTTP、MAIL、POP、LDAP。

这里介绍的 Cold Fusion 特性,有的没有经过自己亲自使用理解会不深刻,如果在学完了这三天的课程,经过了亲自动手的练习,有了一端时间的开发经验后再反过来看这些特性,体会会更加深刻的。

运行 Cold Fusion 应用软件应具备以下部件:

  • Cold Fusion Server : 一个高性能、可升级、开放平台,用来传输 Web

    应用, 从简单的数据驱动页到网络中的全套电子商业解决方案。

  • Cold Fusion Administrator : 一个完全的应用软件管理控制平台。

  • Cold Fusion application pages : 以 cfm 为后缀的文件,内容为 HTML

    和 CFML 的混合编码。

  • ODBC data sources and other data sources : ODBC

    数据源或其他数据源。Cold Fusion 支持使用 32 位ODBC 驱动或OLE DB。

  • Cold Fusion Extensions :

    一个开放的,基于扩展制标语言的构架,通过组成服务器新的成份来扩展 Cold Fusion。使用 COM, CORBA, C/C++, VB Script,

JavaScript or CFML 来连通企业系统。

设置 Cold Fusion 开发环境

ColdFusion 中带有 Administrator,在其中可以对虚拟目录、安全设置、数据源、日志文件、文件索引等进行配置。以安装时写入的密码进入Administrator。

对于刚开始使用 Cold Fusion 来进行简单应用的用户,Administrator 中有两项是必须配置好的,一个是 Mapping(设置虚拟路径),一个是 ODBC(设置 ODBC数据源)。下面讲解一下在 Administrator 中常用到的一些选项:

在 Server 中:

  • ColdFusion Server 的基本配置,一般情况下不必修改

  • 配置 Administrator 和 ColdFusion Studio 的基本和高级安全项。

  • 授权和配置 ColdFusion 的 application, session, 和 client 变量

  • 设置虚拟路径

  • ColdFusion 版本信息

在 Data Sources 中:

  • 配置内置的数据库驱动程序(Oracle and Sybase)

  • 配置 ODBC 数据源

  • Verifying a ColdFusion data source 在 Extensions 中:

  • 配置 CFX tags、用户自己使用 C++ 编写的 tags

  • 配置 Java applets 在 Logging 中:

  • 指定一个目录存放 ColdFusion 的日志文件

  • 设置邮件日志文件选项

  • 查看 ColdFusion 的日志文件在 Automated tasks 中:

  • 生成各种定期运行的任务在 miscellaneous 中:

  • 配置管理员的邮件服务器,以便 ColdFusion 服务器能自动发送信息给管理员

  • 设置程序运行时的环境变量

  • 设置工作路径、初始化路径和超时等

CFML 语言

CFML 语言是 Cold Fusion 特有的一种语言,也是 Cold Fusion 重要的组成部分。它是一种服务器端的脚本语言。它由 CFML TagsCFML FunctionsWDDX JavaScript Objects 组成。使用 CFML tags 和数据库发生联系、处理数据并显示结果,CFML tags 十分简单, 语法类似 HTML 的元素语法。CFML 提供大量有用的函数,如动态赋值函数 、队列函数、串函数、查询函数等。当执行 WEB 分布式交换时使用 JavaScript Objects。WDDX

是 WEB 动态数据转换的缩写,它本身是一种扩展语言。它可将大量数据,无论是数字还是

结构体、记录集转为文本块,并将其放入 WDDX 格式中,不受限制地从一个地方送到另外一个地方。

CFML 语言特点:

  1. 处理过程封装。用<CFxxx> </CFxxx>来封装一个 CF 处理过程。

  2. 变量处理:在动态页中处理变量。变量可在页与页之间传递,可以建立浏览器的

    Cookie变量,管理服务器、应用程序、会话层和用户层数据。

  3. 页流向控制:可通过布尔操作(AND, OR, NOT, etc.)和 CFIF CFELSE

    CFELSEIF、CFSWITCH CFCASE CFDEFAULTCASE 和 CFLOOP 等Tag 来对页的流向进行控制。

  4. 可扩展性:通过 CFX_xxx,可以将自行开发的应用程序引入应用中来。

练习题:

可以上网观看几个 ColdFusion 的实际网站,对 ColdFusion 有一个大致的了解: www.coldfusion.com.cn