Ajax(Asynchronous JavaScript + XML)正在迅速地成为时髦的技术,它可以为在浏览器中运行的 Web 应用程序提供具有桌面质量的软件特性。开放源码软件(比如 Linux-Apache-MySQL-PHP,即 LAMP)和基于开放标准的 Java™ 2 Platform, Enterprise Edition 中间件(比如 IBM® WebSphere® Application Server Community Edition)为开发和部署 Ajax Web 应用程序提供了出色的支持。这个分三部分的系列讨论如何使用开放源码中间件开发端到端 Ajax 应用程序,本文是这个系列的第一篇文章。如果您是 Web 开发的新手,但是可以阅读和理解用 XHTML、CSS、JavaScript、PHP 和 SQL 编写的代码,那么本文正适合您。读完本文之后,您会很好地理解 Ajax 的基本概念以及 Ajax 在三层 Web 应用程序场景中可能产生的作用。
Ajax 是 Web 2.0 技术的一部分,近来得到了架构师、开发人员、产品经理和 Web 应用程序用户的极大关注。Ajax 编程技术由一些已经证明有效的技术组成,比如 XHTML、JavaScript、CSS 和 XML Http Request(XHR)。流行的服务访问和数据交换技术,比如 Representational State Transfer(REST)和 JavaScript Object Notation(JSON),也非常适合 Ajax 技术。客户端上已经证明有效的这些技术可以与 PHP、Python 和 Ruby 等开放源码技术相结合,将 Ajax 扩展到中间层应用程序开发领域。在这个组合之上,还可以用开放源码数据库 MySQL 建立数据层。
与 Ajax 编程技术相匹配的其他技术包括同样令人印象深刻的基于 Eclipse 的开发工具,这些工具是开放源码的,可以免费下载和使用。前面提到的所有客户端、中间层和数据层技术组合在一起,就形成了一个强大的 Web 应用程序开发技术组合。但是,究竟如何开发和部署端到端 Ajax 应用程序呢?这个分三部分的文章系列将带领您研究一个端到端开发场景,以此回答这个问题。
典型的企业级 Web 应用程序要处理许多因素,从而保证高度健壮。为了学习所选的开放源码软件的核心功能,我们的场景不考虑安全性、可伸缩性和可用性等关键的企业级特性,您应该通过其他资料学习这些特性。本文中的所有讨论只适用于我们场景中描述的一类 Ajax 应用程序。具体地说,这个系列详细讨论如何创建 MySQL 数据库,在 PHP 运行时环境中设计和开发中间层/数据库逻辑,然后使用 JavaScript 创建一个真正的单页面 Ajax 客户机界面。这个系列包含代码示例,介绍在 Eclipse 中开发和测试 Ajax 应用程序所需的步骤,解释如何在 Firefox(客户端)、Zend PHP(中间层)和 MySQL(数据层)中部署 Ajax 应用程序。这个端到端应用程序涉及 XHTML、CSS、JavaScript、XHR、DOM、REST、SOAP、JSON、XML、PHP、MySQL 和 Eclipse 的综合运用,涉及前面提到的开放源码平台的许多内置特性。简言之,这个系列是介绍如何在应用程序层之间进行适当的隔离,从而形成干净优雅的 Web 应用程序。
正如标题所指出的,这个分三部分的系列将详细介绍开发端到端 Ajax 应用程序的一些核心功能。这些功能包括以下三个应用程序层中的特定技术:
- 客户端
- 中间层
- 数据层
在 客户端中,包含 XHTML、CSS、JavaScript 和 XML Http Request(XHR)等技术。除了前面已经提到的几种中间层开放源码技术之外,这个系列还使用 PHP,这是因为 PHP 非常简单而且当前得到了广泛应用。在数据层中使用 MySQL 数据库。另外,这个系列使用流行的 Web 服务技术,比如 REST、SOAP、JSON 和 XML。我们将在一个场景中综合使用所有这些技术。
为了进行端到端 Ajax 应用程序开发,需要按照下面几节中的步骤安装和配置运行时环境和开发环境。然后,我们并不按惯例提供 Hello World 应用程序,而是分析一个比较复杂的银行场景。这个场景在一个虚构的银行环境中解释前面提到的所有技术的使用方法,其中涉及银行的后端数据库、基于浏览器的银行客户门户以及一个真实的第三方金融 Web 服务。
为了开发和部署跨越所有三个应用程序层的银行场景,需要为这些层中的以下组件选择软件:
- Web 浏览器
- 数据库服务器
- Web 服务器
- 中间层服务器
- 用于中间层代码开发的 IDE
- 用于客户端代码开发的 IDE
有许多开放源码软件可以满足各个层的需要,本系列中的场景选用以下软件:
Web 浏览器:Mozilla Firefox 2.0.0.4 或更高版本。Firefox 具有许多优点,包括可用性、在线安全性以及能够通过众多的扩展应用程序进行定制。还要使用 Firebug,这是 Firefox 的一个浏览器应用程序调试器扩展。
数据库服务器:MySQL 5.0.41 或更高版本。MySQL 采用客户机/服务器模式和嵌入模式。它完全是用 C 和 C++ 编写的。它有两种版本:Enterprise 服务器和 Community 服务器。Community 服务器是免费的,而且足以满足本文中的银行场景的需要。
Web 服务器:Apache Web server 2.2.2。Apache 允许进行灵活的配置,并可以用第三方模块进行扩展。
中间层服务器:Zend Core 2.0.1 或更高版本。这种免费的开放源码服务器支持 PHP 5。它得到强有力的社区支持。它包含 Apache Web 服务器,并支持 MySQL、IBM DB2® 和 Oracle 等数据库。Zend Core for IBM 专门针对 IBM DB2 进行过调优。图 1 给出 Zend Core 的概况。
中间层 IDE(Integrated Development Environment):Eclipse PDT 0.7 RC3 或更高版本。PDT 是针对 Eclipse 平台的 PHP Development Tools 框架,其中包含开发 PHP 应用程序所需的所有开发组件。在这个 IDE 中还支持 PHP 调试。Zend、IBM 和其他公司将它捐献给开放源码运动。在编写本文时,它刚刚出现,而且正好适合开发我们银行场景的中间层逻辑。
客户端 IDE:Aptana Web IDE 0.2.8.14433 或更高版本。这是一个免费的开放源码的跨平台的以 JavaScript 为中心的开发环境,可以用来开发 Ajax 浏览器应用程序。它为 JavaScript、HTML 和 CSS 提供编码支持。它支持 JavaScript 调试,并内置了对几种 Ajax 框架的支持。除此之外,它还是基于 Eclipse 的。
按照下面几节中的步骤安装和设置这些开放源码软件包,从而建立开发和部署端到端 Ajax 应用程序的环境。(注意:本文中的所有安装和开发说明都针对 Microsoft® Windows® 操作系统。)

安装 Mozilla Firefox(关于插件安装更详细请参考:http://angelwaiter.blog.sohu.com/66366597.html)
按照以下步骤安装 Mozilla Firefox:
- 创建一个称为 c:\temp\dw-ajax 的临时目录,可以在这里存储不同软件包的所有安装文件。
- 通过 参考资料 一节中的 Mozilla URL 下载 Mozilla Firefox 2.0.0.4 或更高版本,并将它保存到 c:\temp\dw-ajax 中。
- 通过运行第 2 步中下载的文件,安装 Mozilla Firefox 2.0.0.4:
- 在 Mozilla 安装向导中,单击 Next。
- 接受许可协议并单击 Next。
- 选择 Custom 并单击 Next。
- 确保选择 DOM Inspector 和 Quality Feedback Agent 选项,并单击 Next。
- 接受默认的安装文件夹并单击 Next。
- 确保不选择前两个选项(On my Desktop 和 In my Start Menu Programs Folder)。
- 完成安装之后,确保选择 Launch Mozilla Firefox now 选项。
- 单击 Finish。
- 如果询问是否让 Mozilla Firefox 成为默认浏览器,那么选择 Yes。
- 启动 Firefox 浏览器并访问 参考资料 一节中的 Mozilla Firefox URL。
- 单击页面顶部的 Add-ons。
- 在 Firefox Web 站点的搜索栏中,输入 Firebug 并单击 Search。
- 在搜索结果中,单击 Firebug。
- 单击 Install now;在出现的弹出对话框中,单击 Install now。
- 单击 Restart Firefox。
- 在 Firefox 中,单击 Tools->Firebug->Open Firebug。
- 如果在浏览器窗口的底部看到 Firebug 被禁用的消息,那么单击 Enable Firebug。
- 关闭 Firefox 浏览器。
安装 MySQL(相关管理工具的安装请参考:http://angelwaiter.blog.sohu.com/66367550.html)
执行以下步骤来安装 MySQL 数据库服务器:
- 访问 参考资料 一节中的 MySQL URL。
- 单击 MySQL Community Server。(这时一般会直接转到当前推荐的 GA 版本。)
- 下载 5.0.41 或更高版本的 Windows (x86) Zip/Setup.EXE 并将它存储在 c:\temp\dw-ajax 目录中。(这个 .zip 文件只包含一个文件,这是 MySQL 的可执行安装文件。)
- 从 .zip 文件中提取出 MySQL 的可执行安装文件并将它存储在 c:\temp\dw-ajax 目录中。
- 运行第 4 步中提取出的可执行文件(Setup.exe):
- 单击 Next。
- 选择安装类型为 Complete 并单击 Next。
- 单击 Install。
- 选择 Skip Sign-Up 并单击 Next。
- 确保选择 Configure the MySQL Server now 并单击 Finish。这时会启动 MySQL Server Instance Configuration Wizard。
- 单击 Next。
- 选择 Detailed Configuration 并单击 Next。
- 选择 Developer Machine 并单击 Next。
- 选择 Select Multifunctional Database 并单击 Next。
- 对于 InnoDB Tablespace Settings,接受默认选项并单击 Next。
- 选择 Decision Support (DSS)/OLAP 并单击 Next。
- 确保选择 Enable TCP/IP Networking 和 Enable Strict Mode 选项并单击 Next。
- 选择 Standard Character Set 并单击 Next。
- 确保选择 Install As Windows Service 和 Include Bin Directory in Windows PATH 选项并单击 Next。
- 输入新的根密码 webtech 并单击 Next。
- 单击 Execute。
- 单击 Finish。
安装 Apache Web 服务器和 Zend Core PHP 服务器
Zend Technologies Ltd. 免费提供 Zend Core。它包含 Apache Web 服务器。执行以下步骤来安装 Apache Web 服务器和 Zend Core PHP 服务器。
为了免费下载 Zend Core,必须在 Zend Web 站点上注册。如果还没有注册,那么访问 参考资料 中的 Zend Core URL 并注册。
- 在 Zend Web 站点上注册之后,访问 参考资料 中的 Zend Core URL 并登录进下载区域。
- 选择 Agree to EULA 复选框并单击 Submit。
- 在 Zend Core Generic 部分中,下载 Zend Core Windows x86(Version v2.0.1 或更高版本)并将这个 .zip 文件保存在 c:\temp\dw-ajax 目录中。(这个 .zip 文件只包含一个文件,这是 Zend Core 的可执行安装文件。)
- 从 .zip 文件中提取出 Zend Core 的可执行安装文件并将它存储在 c:\temp\dw-ajax 目录中。
- 运行 ZendCore-v2.0.1-Windows-x86.exe 或更高版本:
- 单击 Next。
- 接受许可协议并单击 Next。
- 选择安装类型为 Complete 并单击 Next。
- 选择 Skip Sign-Up 并单击 Next。
- 接受默认的目标位置并单击 Next。
- 选择 Install bundled Apache 2.2.2 并单击 Next。
- 接受默认端口号 80 并单击 Next。
- 接受默认的扩展关联并单击 Next。
- 输入管理控制台密码 webtech 并单击 Next。
- 确保将 Zend Network Registration 设置为 No 并单击 Next。
- 单击 Install 开始安装,并等待 Zend Core 完成安装。在复制 Zend Core 文件之后,安装程序会安装 Microsoft Visual C++ 的可重新发布版本。在此之后,Zend Core 安装程序结束运行,并显示一个包含 Zend Core Administration URL 的消息对话框。
- 单击 OK 关闭这个消息对话框。
- 单击 Finish 关闭安装完成对话框。
- 进入计算机上的 c:\Program Files\Zend\Apache2\bin 目录并双击 ApacheMonitor 程序。这时 Apache Monitor 会作为面板图标出现在任务栏上。可以使用这个面板图标启动和停止 Apache 和 Zend 服务器。
- 配置 Zend Core:
- 在 Windows Start 菜单上,选择 Programs->Zend Core->Zend Core Administration Console。
- 输入密码 webtech。
- 单击 Configuration 选项卡(见 图 2)。
- 单击 Extensions 选项卡。
- 定位到列表中的 curl - cURL 并单击 Enable/Disable 栏中的红色圆圈,让红色圆圈变成绿色的。
- 定位到列表中的 mysqli - MySQL improved 并单击 Enable/Disable 栏中的红色圆圈,让红色圆圈变成绿色的。
- 单击页面右上角的 Save Settings。
- 单击 Logout。
- 单击任务栏中的 Apache 面板图标并选择 Apache2 HTTP Server->Restart。
图 2. Zend Core 配置屏幕

未完待续



开发端到端的 Ajax 应用程序,第 1 部分 用一个场景设置 Ajax 环境

guitar_men
