Flex 架构简介

来源:互联网 发布:oracle和mysql区别 编辑:程序博客网 时间:2024/05/17 08:30

原来FLEX其实是客户端技术,它是运行于客户的浏览器是的,与JAVAEE中的JSPServlet在服务端运行完全是两码事,而且如果加载业务还需要单独做一个与之通讯的服务器。学习长知识了。

FLEX技术概述
FLEX为表现层技术,也是就是说,FLEX适合在一些需要丰富的页面展现和用户体验的场合(与之相似
的技术包括AJAX等)。FLEX不会帮你完成业务和数据层的工作,这些还是JAVA\.NET发挥作用的地方。
所以,尤其要重视FLEX技术和传统的服务器端技术的整合,他们只有配合起来,才能展现出FLEX的威
力。
• RIA(富互联网应用程序)分类和比较
RIA技
术分类
包含技术优点缺点
浏览器• Ajax
• 基于原有Web技术
• 与HTML无缝集成
• 无需学习新技术
• 把应用程序绑定在浏览器中,
受浏览器安全沙箱控制
• 浏览器的兼容性影响应用程序
的开发和运行
浏览器
插件
• Flex
• Silverlight
• Laszlo
• 独立的技术
• 与HTML部分集成
• 丰富的界面表现
• 特定的开发语言和工具
• 能使用部分在Web开发中
经验
• 需要下载插件和定制的运行时
• 运行在浏览器中,受浏览器安
全沙箱控制
• 需要学习新技术
新型桌

• WPF
• AIR
• JavaFX
• XUL
• 独立完善的技术
• 特定的开发语言和工具
• 可独立浏览器运行(也可
以运行于浏览器中)
• 最丰富的界面表现
• 能方便的访问本地资源需
要学习新技术
• 可使用桌面软件开发的技

• 需要安装单独的运行环境
• 需要学习新技术
FLEX和FLASH的关系
简单的理解,FLEX就是以XML描述的FLASH,通过FLEX编译工具,可以将其编译成swf格式的文件,也
就是传统意义上的flash文件。从这个意义上说,即使没有FLEX,传统的FLASH同样可以完成相同的工作,
不过,FLEX以XML+ActionScript的方式,更适合程序员的习惯和思维方式。
FLEX和服务器端技术的关系
• FLEX本质上就是一个运行在客户端FLASH PLAYER(FLASH播放器)中的swf文件。
他所要求的一些的资源,比如图片、视频等,无一不是从服务器端下载而来。由于安全上的限
制,FLEX很难获得客户端本地的资源,除非有用户确认了这样的操作(沙箱模型)。
• FLEX与服务器技术的通信方式
既然FLEX运行在客户端,那么必然要有和服务器通信的能力。
方法有几种:
a、 通过调用浏览器容器的javascript函数,间接的与服务器端通信,此种方式最为基本。
b、 利用actionscript所包含网络方法(比如XMLSocket等),直接与服务器端通信。XMLSocket要求
对应的服务器端要有socket服务。

c、BlazeDS利用RemoteObject与javaweb服务器进行通讯,可以实现远程调用(RPC)与服务器推送(PUSH)消息。

d、webService
参考
MINA(java nio socket开源框架)
• 调用web服务(标签mx:WebService)。
• 以AMF协议通信,此种方式最为方便高效,不但可以传递简单的字符串,而且可以获得服务器端
对象,比如数据集。
相应开源框架
OpenAMF(JAVA实现)
PHPAMF(PHP实现)
AMF.NET(NET实现)
FLEX开发框架
Clear Toolkit(最近开放源码)
pureMVC
cariagorm(官方flex开发框架)
FLEX应用服务器
FLEX服务器LiveCycle Data Services(开发版免费、企业版收费)
Granite DS (开源EJB3/Spring/Pojo 服务支持)
FLEX调试框架
FlexUnit (ActionScript 3单元测试框架)
FLEX与流媒体技术
Flex本身提供了支持流媒体(FLV、H.264)的方法和组件,配合流媒体服务器,可以实现视频相
关应用。
主要的流媒体服务器
FMS(官方收费)
RED5(java开源性能不佳)
FFMpeg(FLV视频转换)
FLEX开发工具
Flex Builder(官方收费)
FlashDevelop(免费)