1. 云栖社区>
  2. 技术文集>
  3. 列表>
  4. 正文

使用PHP和AJAX的XML编程(1)

作者:用户 来源:互联网 时间:2016-09-19 14:13:07

xml数据对象应用程序逻辑业务xml对象javascript关系图

使用PHP和AJAX的XML编程(1) - 摘要: 本文讲的是使用PHP和AJAX的XML编程(1),   在 SOA 架构中,程序员经常使用 XML 在应用程序之间交换结构化和半结构化的数据。XML 及其相关技术 — 文档对象模型(Document Obj

  在 SOA 架构中,程序员经常使用 XML 在应用程序之间交换结构化和半结构化的数据。XML 及其相关技术 — 文档对象模型(Document Object Model,DOM)、XPath、HTTP、XQuery 和可扩展样式表语言转换(Extensible Stylesheet Language Transformations,XSLT) — 为快速应用程序开发提供了一个强大的环境。构建在这些技术之上的应用程序将占用更小的内存空间,需要更低的维护成本,同时又拥有更高的品质和灵活性。

  DB2 和其他关系数据库的 XML 方面的特性已经相当成熟,因此除了存储和管理关系数据之外,它们还是存储和管理 XML 数据的理想选择。DB2 9 XML 支持(称为 pureXML)提供了以纯 XML 的形式(换句话说,就是带注释的、树型的分层存储)存储 XML 的能力。在 DB2 9 中,XML 数据可以用 XML 模式索引,可以从关系数据组合而成,可以分解为关系数据,可以查询和转换,可以独立发布,或者通过混合使用 SQL/XML 和 XQuery 与关系数据组合起来。

  Web 浏览器也正在为客户机脚本提供更多的功能来有效地处理 XML。通过使用异步 JavaScript 和 XML(Asynchronous JavaScript and XML,Ajax),Web 页面现在可以直接对应用服务器进行远程过程调用,并且可以在任何返回的 XML 数据上使用 DOM API。

  本文将展示如何利用 DB2 XML、Ajax 和 PHP Hypertext Preprocessor (PHP) 提供的功能来编写简单的基于 XML 的应用程序。通过示例场景的帮助,您将学习如何在 JavaScript 中调用 PHP 应用程序;如何使用 DOM 和 SimpleXML API 修改 XML 数据;如何将 XML 从客户机传送到应用程序再到数据库;以及如何创建 PHP Web 服务来使用 SQL/XML 和 XQuery 发布关于 XML 数据的报告。

  XML 优点

  大多数应用程序都用于创建、存储、操纵和呈现业务数据。对象包装是指将业务数据绑在一起,使业务逻辑更容易处理它们。这些包装器对象的很多功能都是根据关系和格式化规则来提供业务数据的结构,并使业务逻辑能够操纵、发布和串行化封装的数据。

  图 1. 基于对象包装器的应用程序  

使用PHP和AJAX的XML编程(1)-php使用ajax

  图 1 阐释了使用对象包装器的一个示例人寿保险应用程序。每个方框表示一个对象,每个对象至少有:

  ·一个构造函数

  ·Getter 和 Setter 方法

  ·验证代码

  ·内部对象层次的串行化

  这些对象与实际的业务逻辑没有关系。对象包装是为了使业务逻辑更容易管理业务数据。包装数据所需的代码比业务逻辑要多得多。更多的代码将导致更多的 bug、更大的固定性、更多的维护和更高的成本。

  如果对象中的数据变量可以格式化为 XML 结构,并且对象的主要作用是将这些数据暴露给业务逻辑并让业务逻辑操纵它们,那么可以用 DOM 代替对象。

  图 2. 基于 XML 的应用程序 

使用PHP和AJAX的XML编程(1)-php怎么使用xml文件
  图 2 展示了一个使用 XML 和 DOM 包装器的示例保险应用程序。图 1 中的所有数据包装器对象都用一个 DOM 对象代替。业务数据是用 XML 建模的,DOM 提供了必要的 API 来:

  ·创建新的 XML 对象。

  ·更新 XML 对象的值。

  ·导航 XML 对象。

  ·使用 XPath 在对象层次中搜索。

  ·串行化和反串行化 XML 对象层次(换句话说,就是内建持久性)。

  通过使用 XML,可以避免使用大多数用于管理业务数据的包装器对象。应用程序将变得更加简洁,并且更多地将重点放在业务逻辑上,而不是数据管理上。

  XML 和架构

  将 XML 引入架构中可以为表示业务数据带来一种标准化的方式。XML 可以提供数据的结构;XML 模式施加结构和格式化规则;DOM API 和 XQuery、XPath 及 XSLT 之类的语言使业务逻辑可以有效地操纵、发布和串行化数据。由于业务数据的 XML 表示在客户机、中间层和数据库中都是一致的,因此操纵这些对象的代码也是类似的。

  我将展示如何在三层环境中构建基于 XML 的应用程序,这个三层环境由以下几个部分组成:

  ·Web 客户机:Asynchronous JavaScript and XML (Ajax),DOM

  ·应用服务器:PHP 和 SimpleXML

  ·数据库: DB2 9 和 SQL/XML,XQuery 



以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有 的相关内容,欢迎继续使用右上角搜索按钮进行搜索xml , 数据 , 对象 , 应用程序 , 逻辑 , 业务 , xml对象 javascript关系图 php使用ajax、php怎么使用xml文件、asp.net ajax编程指南、ajax编程、ajax xmlhttprequest,以便于您获取更多的相关知识。

JavaScript、jQuery与Ajax的关系_javascript技巧

...端语言。 2、Ajax是一门技术,它提供了异步更新的机制,使用客户端与服务器间交换数据而非整个页面文档,实现页面的局部更新。 3、jQuery是一个框架,它对JS进行了封装,使其更方便使用。jQuery使得JS与Ajax的使用更方便 详细...

使用PHP和AJAX的XML编程

在 SOA 架构中,程序员经常使用 XML 在应用程序之间交换结构化和半结构化的数据。XML 及其相关技术 — 文档对象模型(Document Object Model,DOM)、XPath、HTTP、XQuery 和可扩展样式表语言转换(Extensible Stylesheet Language Transformations,XSLT) —...

20个有用的 PHP + jQuery 组件和教程

...Directory Trees With PHP And jQuery 一个单一方式记录许多文件将使用目录树。 目录树列出文件和目录,以便发现是容易的什么您寻找。 使用PHP和jQuery,在本指南,您将学会如何创造目录树。 Check out the Demo Here2. Create a Photo Admin Site Usin...

在JavaScript的jQuery库中操作AJAX的方法讲解

...非常大的优势就是解决了浏览器的兼容问题,这也是我们使用它非常重要的原因之一。 而现在为了满足用户的需求,Ajax(Asynchronous Javascript + XML)异步刷新起到了无可比拟的作用,以前写Ajax操作,总是需要我们想JDBC代码一样...

PHP与Ajax相结合实现登录验证小Demo_php实例

...的 JavaScript 和 XML)。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。 AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。 设计一个用户注册页面,当用户输入注册名的时候,检测用户...

前三篇
后三篇