Flex是如何工作的
来源:互联网 发布:淘宝内裤店铺介绍 编辑:程序博客网 时间:2024/04/29 17:02
Flex是一个提供开发设计和运行支持的架构,它可以使开发人员创建利用Flash Player 9作为前台的“富客户端互联网应用程序/Rich Internet Application/RIA”,以满足用户更为直观和极具交互性的在线体验。
开放Flex应用程序的典型步骤如下:
1、选取一系列预先定制好的、用于设计应用程序界面的组件(如表格、按钮等等)
2、布置组件以设计用户界面
3、使用样式和主题来增加视觉方面的设计
4、添加动态行为(例如程序部件之间的相互作用)
5、定义连接所需的数据库服务
6、将源代码编译成SWF文件,然后在Flash Player中运行。
一个典型的Flex应用程序包括如下元素:
1、Flex Framework
提供创建RIA所需的所有组件:用于应用程序布局规划的容器;针对用户界面和从用户处获取数据的控制;广泛支持的数据绑定、数据格式化、以及有效值验证;事件驱动的开发模式。Flex Framework被包含在公用组件库(SWC)文件中。
2、MXML
每个Flex应用程序至少包含一个MXML文件,它被作为该程序的主文件。MXML是一种标记语言,它是基于XML的一种实现,用来创建Flex应用程序。
3、ActionScriopt 3.0
为应用程序添加动态行为,它是基于ECMAScript的一种实现,类似于JavaScript。它可以作为一个脚本块,在MXML文件中直接进行添加;或者创建一个单独的ActionScript文件,然后将它们导入到MXML文件中。
4、CSS
通过设置组件的属性来改变组件的视觉样式。通常有四种方法来进行控制:通过主题(theme);在CSS文件中进行定义;在MXML文件中的样式块中进行定义;在组件的实例中进行设置。
5、图形资源
Flex包含了各种各样的图形资源,如图标和图像。
6、数据
可以使用各种方式来将这些组件与数据联系起来,如使用数组、收集对象、数据模型、以及外部XML数据等。
Flex应用程序的编译和发布:
所有的元素都被编译或连接到Flex应用程序中。Flex应用程序被编译成一个SWF文件,然后在Flash Player下运行。当一个源代码被编译时,它就被转换成ActionScript类,并与图形和其他资源合并到SWF文件里。在运行时,SWF文件与所需的外部库、服务和数据源进行交互。
连接数据
Flex应用程序并不直接与一个数据库进行连接,可以使用MXML和ActionScript代码来操作和管理数据。在应用程序中可以使用HTTPService组件从PHP所产生的一个XML文件中获取数据。
连接数据库的第一步是生成将在Flex程序中使用到的数据。在与PHP的应用中,采用如下步骤:1、创建一个数据库(如MySQL);2、编写一个PHP脚本连接MySQL数据库并生产XML格式的数据;
对于PHP所生成的XML格式数据,你可以使用HTTPService组件来请求获取数据:
<mx:HTTPService
id="productsRequest"
url="http://www.somesite.com/products.php" />
...
HTTPService组件定义了一个请求ID,通过这个ID来提供数据的URL或者服务器与数据之间的绑定。
通过数据与数据驱动控制的绑定,你就是可以处理HTTPService的结果(XML数据),如下:
dataProvider="{productRequest.lastResult.products.items}" >
<mx:columns>
<mx:DataGridColumn headerText="Name" dataField="name" />
<mx:DataGridColumn headerText="Price" dataField="price" />
</mx:columns>
</mx:DataGrid>
<products>
<item>
<name>Mobile Phone</name>
<price>$199</price>
</item>
<item>
<name>Car Charger</name>
<price>$34</price>
</item>
...
还可以在Flex程序组件的事件中加载数据,如下在Flex程序开始运行时加载数据:
creationComplete="productsRequest.send()" >
Flash Player安全性问题
在客户端的Flash Player中运行的应用程序,只有在满足如下条件之一的情况才能访问远程的数据源:
1、应用程序所编译的SWF文件与远程数据源位于同一个域中;
2、使用代理(proxy),并且你的SWF文件位于和代理相同的服务器上;
3、安装crossdomain.xml(跨域策略)文件在数据源的宿主Web服务器上。
使用布局,事件和行为
如下示例代码演示了简单的布局、样式和事件
<!--MXML 文件
Flex应用程序的所有具体内容都放在<mx:Application>标签队中
在MXML文件中的所有标签都有mx前缀,表示Flex设计命名空间-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<!--<mx:Style source="style.css"/>使用CSS文件应用样式 -->
<!--使用样式块应用样式,设置了TextArea(文本框)的样式-->
<mx:Style>
TextArea...{
font-size:36px;
font-weight:bold;
}
</mx:Style>
<!--定义动作相应函数,ActionScript脚本-->
<mx:Script>
<![CDATA[
public function close():void...{
myPanel.visible=false;
}
]]>
</mx:Script>
<!--定义特殊效果-->
<mx:Fade id="myFade"/>
<mx:Panel id="myPanel" layout="absolute" width="80%" height="80%" x="122" y="24" hideEffect="myFade">
<mx:TextArea text="Hello to Flex!" top="10" bottom="70" left="10" right="30">
</mx:TextArea>
<!--
<mx:Button label="Close" right="80" bottom="30" click="myPanel.visible=false"/>
-->
<mx:Button label="Close" right="80" bottom="30" click="close()"/>
</mx:Panel>
</mx:Application>
Flex应用程序的特性
在Flex中,开发人员可以开发出符合各种需求类型的应用程序,它们是:
1、用户数据收集
2、配置
3、在客户端处理用户的输入,包括过滤和数据校验
4、直接反馈用户
5、多步骤处理
6、支持大数据集
7、实时数据推进
8、偶尔的客户端连接
Flex发布模式
1、客户端模式,即应用程序只运行在客户端上而不需要服务器资源。
2、使用简单的RPC访问服务器数据,即使用HTTPService(HTTP GET或POST请求)和WebService(通过使用SOAP)。
3、Flex Data Services模式,可以提供更为高级的特性,如数据同步、安全增强等。
Flex Data Services增强的RPC服务支持使用AMF协议去访问RemoteObjects。这样,你就可以访问远程服务器上的Java对象(JavaBeans,EJBs,POJOs)。同时,Flex Data Services还提供了一个代理以方便对服务器端数据的存取。
- Flex是如何工作的
- oracle是如何工作的
- Oracle是如何工作的
- Oracle是如何工作的
- Oracle是如何工作的
- Oracle是如何工作的
- SSL是如何工作的?
- 杀毒软件是如何工作的
- SSL是如何工作的?
- Oracle是如何工作的
- HttpModule是如何工作的
- SSL是如何工作的
- HttpModule是如何工作的
- make是如何工作的
- cocoon2是如何工作的?
- 搜索引擎是如何工作的?
- Oracle是如何工作的
- Shellcodes是如何工作的?
- SQLSERVER补丁无法安装
- Google黑客搜索技术
- 如何在java中的控件上显示图片.
- 使用AjaxPro开发四级无刷新联动下拉框
- 迅雷5下载实用技巧四则
- Flex是如何工作的
- 我应该选择什么,vb,java,oracle,sql server?
- 在gridview中删除行与用连接来取参数到别的页面
- 圆明园
- 星晴
- 邮件发送163
- socket编程中常见的程序片断
- DotNetBar 6.7.0.1 for VS2003/VS2005
- 文件夹加密真相