解析Flex应用程序连接数据的实现

开发 后端
在Flex应用程序中对数据的操作最重要的事情是:Flex应用程序并不直接与一个数据库进行连接,这里就和大家分享一下Flex应用程序与数据连接的步骤。

本文和大家重点讨论一下Flex应用程序连接数据,因为Flex应用程序并不直接与一个数据库进行连接,所以你需要使用某种类型的服务来支持对数据的使用。

Flex应用程序连接数据

请记住,在Flex应用程序中对数据的操作最重要的事情是:Flex应用程序并不直接与一个数据库进行连接。因此,Adobe?FlexBuilder2没有提供直接连接数据的工具。你可以通过使用MXML和ActionScript代码来操作和管理数据。

在Flex中,你可以使用几种方法去操纵和管理数据,它们大多数相关的内容已经超出了在这里进行简要介绍的范围(更多的信息,请查看后面的章节)。不管怎样,请想象一种可以连接外部数据的方法,随后的例子将演示与XML结构的数据进行连接。

数据的生成

因为Flex应用程序并不直接与一个数据库进行连接,所以你需要使用某种类型的服务来支持对数据的使用。在随后的例子中,将使用HTTPService组件从PHP所产生的一个XML文件中获取数据。

连接数据库的***步是生成将在Flex程序中使用到的数据。在与PHP的应用中,你将采用如下的步骤:

1.创建一个数据库(如MySQL)。

2.编写一个PHP脚本连接MySQL数据库并生成XML格式的数据。
这些步骤同样适合于在其它工作平台上生成的数据(如ASP.NET、JSP等)。

连接外部数据源

对于PHP所生成的XML格式数据,你可以使用HTTPService组件来请求获取数据,就象这样:
 

<mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" 
layout="absolute"> 
 
<mx:HTTPService 
id="productsRequest" 
url="http://www.somesite.com/products.php"/> 
...  
 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

 HTTPService组件定义了一个请求ID,你将使用这个ID来控制提供数据的URL或者服务器与数据之间的绑定。

外部数据与数据驱动控制的绑定

通过数据与数据驱动控制(data-drivencontrol)的绑定,你就可以处理HTTPService
的结果(XML数据),就象这样:

<mx:DataGridxmx:DataGridx="20"y="80"id="productGrid"width="400"  
dataProvider="{productRequest.lastResult.products.items}"> 
<mx:columns> 
<mx:DataGridColumnheaderTextmx:DataGridColumnheaderText="Name"dataField="name"/> 
<mx:DataGridColumnheaderTextmx:DataGridColumnheaderText="Price"dataField="price"/> 
</mx:columns> 
</mx:DataGrid> 
 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

 数据绑定的语法显示在数据控制的dataProvider属性中(在波浪形的括号里),它包含了HTTPService请求ID、lastResult方法、以及XML文件的数据结构。在这个例子中,XML数据源的数据结构看起来就象这样:

<XML> 
<products> 
<item> 
<name>MobilePhone</name> 
<price>$199</price> 
</item> 
<item> 
<name>CarCharger</name> 
<price>$34</price> 
</item> 
...  
 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

 通过设置dataField属性,项目数据(name和price)作为数据栅格中每一列的数据。

在运行时加载数据

你还可以在Flex程序开始运行时加载数据,就象随后所示,在HTTPService中向某个特定的URL发送一个请求:

<mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml" 
layout="absolute" 
creationComplete="productsRequest.send()"> 
  • 1.
  • 2.
  • 3.

当你将creationComplete方法添加到应用程序标签里后,数据会在运行时进行加载并交于数据驱动控制(在这个例子中是数据栅格)。
你还可以将HTTPService请求添加到一个控制事件上而不是程序里的标签中,就象如下所示:

<mx:Buttonxmx:Buttonx="50"y="8"label="GetData" 
click="productsRequest.send();"/> 
  • 1.
  • 2.

Flex提供许多方法去连接、管理、格式化、以及校验数据。你可以通过使用远程程序调用、数据服务、或者其它企业级技术来操纵和管理数据。

【编辑推荐】

  1. 创建一个Flex应用程序简明步骤
  2. Flex主题创建及支持的样式设置方式
  3. 学习笔记 Flex应用程序如何启动
  4. Flex应用程序与数据连接的方式
  5. Flex数据绑定及其使用频繁的几种情况 
责任编辑:佚名 来源: csdn.net
相关推荐

2010-08-12 16:20:57

Flex应用程序

2010-08-12 15:44:25

Flex应用程序

2010-08-12 15:59:23

Flex应用程序

2010-08-04 09:43:28

Flex应用程序

2010-08-04 14:15:43

Flex应用程序

2010-08-11 09:36:12

Flex组件

2010-08-12 15:52:34

Flex应用程序

2010-08-04 10:32:56

Flex连接数据库

2010-08-02 09:10:36

Flex模块化

2010-02-06 14:19:26

ibmdwGoogleMap

2010-08-10 15:26:38

Flex应用程序

2011-12-03 20:25:53

2011-06-09 09:12:12

QT symbian

2011-09-01 10:01:35

PhoneGap应用程序GoodDay

2009-12-21 15:48:29

WCF应用程序

2010-03-02 14:24:00

Android应用程序

2009-11-23 19:52:55

ibmdwFlex

2009-06-19 17:24:36

ibmdwMashupLotus

2010-08-13 13:05:30

Flex应用程序

2010-08-02 09:43:00

Flex应用
点赞
收藏

51CTO技术栈公众号