对于高用户交互性的企业应用来说,目前采取Java EE+Flex的架构无疑是绝佳的选择。而沟通服务端java数据和客户端Flex数据的关键,目前主要采用BlazeDS(LCDS的子集,少了部分高级应用)这个中间件技术。
明显两端数据在底层表示上是不一致的,BlazeDS对其进行了映射,但值得注意的是它们之间对应的关系不是对称的,在开发中需要注意:
Java->Actionscript
Java
|
ActionScript
|
java.lang.String
|
string
|
java.lang.Boolean, boolean
|
Boolean
|
java.lang.Integar
|
int
|
java.lang.Short
|
int
|
java.lang.Byte
|
int
|
java.lang.Byte[]
|
Flash.utils.ByteArray
|
java.lang.Double
|
Number
|
java.lang.Float
|
Number
|
java.lang.Long
|
Number
|
java.lang.Character
|
String
|
java.lang.Character[]
|
String
|
java.util.Calendar
|
Date
|
java.util.Date
|
Date
|
java.util.Collection
|
mx.collection.ArrayCollection
|
java.lang.Object[]
|
Array
|
java.util.Map
|
Array (sparse)
|
java.util.Dictionary
|
Object (untyped)
|
org.w3c.dom.Document
|
XML object
|
ActionScript->Java
ActionScript
|
Java
|
Array (dense)
|
java.util.List
|
Array (sparse)
|
java.util.Map
|
flash.utils.ByteArray
|
byte[]
|
flash.utils.IExternalizable
|
java.io.Externalizable
|
Date
|
java.util.Date
|
int/uint
|
java.lang.Integer
|
null
|
null
|
Number
|
java.lang.Double
|
String
|
java.lang.String
|
XML
|
org.w3c.dom.Document
|
XMLDocument
|
org.w3c.dom.Document
|
注:JAVA里的LIST、ARRAYLIST对应到FLEX里可以用常用ArrayCollection来接收。 比如:通过调用
java端某方法返回一个ARRAYLIST,该ARRAYLIST里放的一般是用户自定义类型。FLEX端接收到的
肯定是个OBJECT,这个时候可以强制转换成ArrayCollection:event.result as ArrayCollection。然后
通过遍历该ArrayCollection,来取得存每条数据的OBJECT。 当as这边定义了与自定义类型定义的类
型对应的类时,可以强制转换成该类型。
分享到:
相关推荐
下面我们将详细探讨ActionScript3和Java的数据类型对应关系。 1. 基本数据类型: - AS3中的基本数据类型包括Number(浮点数)、int(整数)、uint(无符号整数)、String(字符串)、Boolean(布尔值)、Object...
在BalzeDs中,了解ActionScript和Java之间的数据类型对照表至关重要,因为它直接影响到数据的正确传输和处理。 首先,我们来看一下ActionScript到Java的数据类型转换: 1. ASJavaArray (dense) -> java.util.List...
本压缩包文件“Flex类图和与Java交互时类型转换对照.rar”显然是为了帮助开发者理解在Flex和Java之间进行数据类型转换的过程。 在Flex和Java的交互过程中,类型转换是关键的一环。在Flex端,主要使用ActionScript...
在Flex中,我们可以使用ActionScript类来创建数据模型,这些类通常与Java后端的业务实体类相对应。模型类不直接与视图或控制器交互,而是通过数据绑定或事件机制传递数据。 2. **View**:视图层主要包含用户可以...
- **类型兼容性**:并非所有Flex类型都有直接的Java对应类型。例如,Flex的`ArrayCollection`在Java中可能会被解析为`List`,需要额外处理。 - **null值**:Flex中的`null`在Java中可能是`null`或特定类型的默认值,...
ActionScript,作为 Flex 的编程语言,其数据类型与 Java 有所不同。在进行数据交换时,了解它们之间的对应关系至关重要。以下是一些主要的数据类型转换规则: 1. **Null**: - 在 ActionScript 和 Java 中,`null...
Flex与Java通信是Web开发中的一个重要技术组合,它允许用户在浏览器端利用Flash的富互联网应用(RIA)特性,通过ActionScript与服务器端的Java应用程序进行数据交互。本压缩包包含了一个完整的Flex与Java通信的示例...
在ActionScript3.0中,包的概念类似于Java语言中的包,即通过点符号(.)定义包名,用来表示类文件所在的目录。 2. **类(Class)**:类是面向对象编程的基础,用于创建对象。在ActionScript3.0中,类的定义以`...
ActionScript(AS)是Flex的主要编程语言,与Java类型对应表提供了AS3数据类型与Java数据类型的对照,使开发者能够更好地理解如何在ActionScript中创建和处理与Java兼容的数据结构。这对于那些已经有Java背景的人来...
这里的`chklist`对应服务器端的Java方法,参数为整型。 2. **监听事件** - 使用`addEventListener`方法监听`ResultEvent.RESULT`事件。当服务器端成功返回结果时,触发`resultHandler`函数。 - 在`resultHandler`...
#### Java与Flex对象对应关系表 | Flex类型 | Java类型 | 备注 | |------------------|------------------------|----------------------------------------------------------| | ASJAVAArraydense | `java.util....
文件"blazeds与java类型对应.pdf"和"As与Java类型对应表.pdf"很可能详细阐述了BlazDS如何将Flex中的ActionScript数据类型映射到Java的数据类型。ActionScript与Java之间的类型映射是BlazDS能够无缝集成Flex和Java的...
1. **Java与ActionScript 3.0简介** - **Java**:由Sun Microsystems(后被Oracle收购)开发的面向对象的编程语言,广泛应用在服务器端开发、Android应用开发等多个领域。 - **ActionScript 3.0**:是Adobe Flash ...
这意味着你可以在Java服务端使用普通的Java类,而在Flex客户端使用对应的ActionScript类,无需手动进行数据序列化和反序列化。 4. 安全性:在Java端,你可以配置安全策略文件来限制Flex客户端可以访问的服务。这...
本篇文章将深入探讨如何实现AdvancedDataGrid的多层分组表头导出到Excel,并与后台JAVA进行交互。 首先,多层分组表头是指在数据网格的列标题部分可以有层次结构的展示,这种设计可以帮助用户更清晰地理解数据之间...
AMF是一种二进制数据格式,能够高效地序列化和反序列化ActionScript对象,使得 Flex与Java之间的数据交换更为快速和高效。Apache BlazeDS和LCDS(LiveCycle Data Services)是两个常用的中间件,它们提供了AMF支持,...
你需要配置`RemoteObject`的`endpoint`属性指向Java服务的URL,并且定义与Java服务对应的接口方法。例如,你可以创建一个名为`LoginService`的服务,其中包含一个`login`方法,接收用户名和密码作为参数,然后将这些...
在Flex中,使用RemoteObject或WebService组件定义服务接口,然后在Java后端创建对应的Service接口或Action类。 2. RESTful服务:REST(Representational State Transfer)是一种轻量级的Web服务设计风格,通过HTTP...
**Spring Actionscript 与 Cairngorm 集成的关键点** 1. **ModelLocator**:Spring Actionscript 可以接管 ModelLocator,通过接口注入 Model 对象,避免了对具体 Model 类的硬编码,增强了代码的灵活性。例如,可以...