Flex之BlazeDS文档

### Flex之BlazeDS文档详解####一、BlazeDS概述##### 1.1引言在Flex开发中,与服务器进行通信是非常重要的环节。传统的HTTPService、WebService、URLLoader及FileReference等组件虽然能够实现基本的通信功能,但在面对大量数据传输和复杂对象序列化时显得力不从心。这时就需要引入更高效的通信协议来解决这些问题。AMF(Action Message Format)作为一种二进制格式的协议,相比于基于文本的协议如XML,能够大幅提高通信效率并减少资源消耗。 AMF-RPC(AMF远程过程调用)是一种基于AMF协议的远程通信方式,能够在客户端和服务器之间高效地传输数据和对象。在Java平台上,有两种主要的技术可以实现AMF-RPC功能:LCDS(LiveCycle Data Services)和BlazeDS。其中,BlazeDS是一款开源软件,相较于LCDS更为轻量级且易于集成。 ##### 1.2概要无论是哪种服务器端技术,都可以轻松地应用XML协议进行数据交换,但是这种基于文本的协议存在一定的局限性。例如,额外的数据抽象层需要编写和维护,这增加了开发成本;同时,数据的序列化和反序列化过程会消耗大量的计算资源。为了克服这些限制,Flash Player支持另一种名为AMF的传输协议。AMF协议是一种二进制格式的协议,能够替代传统的基于文本的协议如XML,从而在HTTP协议之上高效地交换数据。使用AMF协议的应用程序可以显著减少数据抽象层的工作量,并提高客户端与服务器之间的通信效率。 BlazeDS包含了AMF协议的Java实现,它不仅可以用于远程调用服务器端的Java对象,还可以用于客户端之间的消息传递。开发人员可以通过简单的API调用实现对POJO、Spring服务或EJB方法的远程调用。此外,BlazeDS还提供了消息系统,使得客户端和服务器之间能够双向发送消息。 BlazeDS还可以与其他消息系统集成,例如JMS(Java Messaging Service)和ActiveMQ。由于其远程技术和消息系统都采用了基于HTTP的AMF数据传输方式,因此在性能方面具有明显优势。 ####二、BlazeDS的组成部分BlazeDS应用通常由两部分组成: 1. **客户端程序**:通常是一个Flex或AIR应用程序。Flex和AIR程序使用Flex组件与BlazeDS服务器进行通信,包括RemoteObject、HTTPService、WebService、Producer和Consumer等组件。这些组件都是Flex SDK的一部分。除了Flex或AIR之外,也可以结合使用HTML和JavaScript技术,通过Ajax客户端库与BlazeDS进行通信。 2. **BlazeDS服务端**:运行在J2EE应用服务器上的WEB应用中。BlazeDS包含三个预定义的web应用,可以作为开发自定义应用的基础。为了使现有的J2EE web应用支持BlazeDS,需要执行以下步骤: -将BlazeDS及其依赖的jar包复制到WEB-INF/lib目录下。 -修改WEB-INF/flex目录下的相关配置文件,以适应BlazeDS的需求。 ####三、BlazeDS的特点1. **高性能**:AMF协议减少了数据传输时的带宽消耗,提高了数据交换的速度。 2. **易用性**:BlazeDS提供了丰富的API和组件,使得开发人员能够快速构建客户端与服务器之间的交互逻辑。 3. **灵活性**:不仅支持Flex和AIR客户端,还支持HTML和JavaScript客户端,提供了多种通信选项。 4. **开源**:BlazeDS是开源软件,这意味着它可以免费使用,并且有一个活跃的社区支持。 5. **集成性**:可以轻松集成到现有的Java应用服务器环境中,支持多种服务器环境,如Tomcat、WebSphere、WebLogic、JBoss等。 BlazeDS作为一款优秀的前后台通信框架,不仅提高了Flex应用与服务器之间的通信效率,还简化了开发流程,使得开发者能够更加专注于业务逻辑的实现。
doc 文件大小:679.5KB