flex连接数据库的方法:
Flex 应用程序并不直接与一个数据库进行连接,所以你需要使用某种类型的服务
来支持对数据的使用。
连接数据库的第一步是生成将在Flex 程序中使用到的数据。在与PHP 的应用中,你将
采用如下的步骤:
1. 创建一个数据库(如MySQL)。
2. 编写一个PHP 脚本连接MySQL 数据库并生成XML 格式的数据。
这些步骤同样适合于在其它工作平台上生成的数据(如ASP.NET、 JSP 等)。
连接外部数据源
对于PHP 所生成的XML 格式数据,你可以使用HTTPService 组件来请求获取数据,
就象这样:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:HTTPService
id="productsRequest"
url="http://www.somesite.com/products.php" />
...
HTTPService 组件定义了一个请求ID,你将使用这个ID 来控制提供数据的URL 或者服务器与数据之间的绑定。
外部数据与数据驱动控制的绑定
通过数据与数据驱动控制(data-driven control) 的绑定,你就可以处理HTTPService的结果(XML 数据),就象这样:
<mx:DataGrid x="20" y="80" id="productGrid" width="400"
dataProvider="{productRequest.lastResult.products.items}" >
<mx:columns>
<mx:DataGridColumn headerText="Name" dataField="name" />
<mx:DataGridColumn headerText="Price" dataField="price" />
</mx:columns>
</mx:DataGrid>
数据绑定的语法显示在数据控制的dataProvider 属性中(在波浪形的括号里),它包含了HTTPService 请求ID、lastResult 方法、以及XML 文件的数据结构。在这个例子中,XML数据源的数据结构看起来就象这样:
<XML>
<products>
<item>
<name>Mobile Phone</name>
<price>$199</price>
</item>
<item>
<name>Car Charger</name>
<price>$34</price>
</item>
...
通过设置dataField 属性,项目数据(name 和price)作为数据栅格中每一列的数据。
在运行时加载数据
你还可以在Flex 程序开始运行时加载数据,就象随后所示,在 HTTPService 中向某个特定的URL 发送一个请求:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="productsRequest.send()" >
当你将creationComplete 方法添加到应用程序标签里后,数据会在运行时进行加载并交于数据驱动控制(在这个例子中是数据栅格)。
你还可以将HTTPService 请求添加到一个控制事件上而不是程序里的标签中,就象如下所示:
<mx:Button x="50" y="8" label="Get Data" click="productsRequest.send();" />
Flex 提供许多方法去连接、管理、格式化、以及校验数据。你可以通过使用远程程序调用、数据服务、或者其它企业级技术来操纵和管理数据。
Flex 应用程序并不直接与一个数据库进行连接,所以你需要使用某种类型的服务
来支持对数据的使用。
连接数据库的第一步是生成将在Flex 程序中使用到的数据。在与PHP 的应用中,你将
采用如下的步骤:
1. 创建一个数据库(如MySQL)。
2. 编写一个PHP 脚本连接MySQL 数据库并生成XML 格式的数据。
这些步骤同样适合于在其它工作平台上生成的数据(如ASP.NET、 JSP 等)。
连接外部数据源
对于PHP 所生成的XML 格式数据,你可以使用HTTPService 组件来请求获取数据,
就象这样:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:HTTPService
id="productsRequest"
url="http://www.somesite.com/products.php" />
...
HTTPService 组件定义了一个请求ID,你将使用这个ID 来控制提供数据的URL 或者服务器与数据之间的绑定。
外部数据与数据驱动控制的绑定
通过数据与数据驱动控制(data-driven control) 的绑定,你就可以处理HTTPService的结果(XML 数据),就象这样:
<mx:DataGrid x="20" y="80" id="productGrid" width="400"
dataProvider="{productRequest.lastResult.products.items}" >
<mx:columns>
<mx:DataGridColumn headerText="Name" dataField="name" />
<mx:DataGridColumn headerText="Price" dataField="price" />
</mx:columns>
</mx:DataGrid>
数据绑定的语法显示在数据控制的dataProvider 属性中(在波浪形的括号里),它包含了HTTPService 请求ID、lastResult 方法、以及XML 文件的数据结构。在这个例子中,XML数据源的数据结构看起来就象这样:
<XML>
<products>
<item>
<name>Mobile Phone</name>
<price>$199</price>
</item>
<item>
<name>Car Charger</name>
<price>$34</price>
</item>
...
通过设置dataField 属性,项目数据(name 和price)作为数据栅格中每一列的数据。
在运行时加载数据
你还可以在Flex 程序开始运行时加载数据,就象随后所示,在 HTTPService 中向某个特定的URL 发送一个请求:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="productsRequest.send()" >
当你将creationComplete 方法添加到应用程序标签里后,数据会在运行时进行加载并交于数据驱动控制(在这个例子中是数据栅格)。
你还可以将HTTPService 请求添加到一个控制事件上而不是程序里的标签中,就象如下所示:
<mx:Button x="50" y="8" label="Get Data" click="productsRequest.send();" />
Flex 提供许多方法去连接、管理、格式化、以及校验数据。你可以通过使用远程程序调用、数据服务、或者其它企业级技术来操纵和管理数据。