`

Java与Flash的结合时候数据交换的一些学习总结

阅读更多

1.服务器端如果用Java的话,推荐用OpenAmf,文档较多,使用也挺简单.服务器端我采用了Hibernate Annotation+Spring+OpenAmf

2.对于服务器端向客户端发送数据的时候,由于我用了OpenAmf,没有采用Flash中自带的WebServiceConnector.

我在Flash 中用脚本这样写:

var flashtestService:Service = new Service("http://localhost:8080/ProjectFramework/gateway",null, "testBean", null, null);
//flashtestService其实就是服务器端testBean的一个客户端代理类对象,
//getJson对应服务器端中testBean中getJson方法,返回Json数据
var pc:PendingCall = flashtestService.getJson();
//下面这一句的后两个参数,就是我们要调用的getMessage方法,分别加上_Result和_Fault
pc.responder = new RelayResponder(this, "getJson_Result", "getJson_Fault");

  

服务器端返回Json数据后,可以自己绑定到Flash的DataGrid的组件中,非常方便.

下面是一个简单的Json数据绑定DataGrid的例子,注意似乎flash 8中的ActionScript脚本对[{"id","fsdf"}] 这样的json数据不接受,总是报**错误** 场景=场景 1, 图层=图层 1, 帧=1:第 8 行: 需要标识符

   而恰恰我在服务器端,用JSON-LIB对List集合转化出来的数据,左边和右边都是加引号的,所以DataGrid不认,我郁闷.本来想修改一下JSON-LIB的源码,将生成出的数据中如[{"id","fsdf"}]中id两边的引号去掉的,但是下了JSON-LIB的源码看了半天也不知道如何下手.所以不得不自己麻烦的构造JSON数据.

   哪位高手如果能提供一下 修改版本JSON-LIB,能将左边的引号去掉,小弟先谢了.

 

下面提供一个简单的JSON数组绑定DataGrid的代码:

import mx.controls.gridclasses.DataGridColumn;



//创建 recData,它在对象数组中包含客户信息
var recData:Array = [{id:0, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:1, firstName:"Susan", lastName:"Meth", age:55, usCitizen:true},
              {id:2, firstName:"Pablo", lastName:"Picasso", age:108, usCitizen:false},
              {id:3, firstName:"DingDing", lastName:"Jones", age:27, usCitizen:true},
              {id:4, firstName:"wcr", lastName:"Jones", age:27, usCitizen:true},
              {id:5, firstName:"wyz", lastName:"Jones", age:27, usCitizen:true},
              {id:6, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:7, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:8, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:9, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:10, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:11, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true},
              {id:12, firstName:"Frank", lastName:"Jones", age:27, usCitizen:true}];


//对datagrid设置 指明要显示的列
var col:DataGridColumn = new DataGridColumn("id");
datagrid.addColumn(col);
col = new DataGridColumn("firstName");
datagrid.addColumn(col);
col = new DataGridColumn("lastName");
datagrid.addColumn(col);
col = new DataGridColumn("age");
datagrid.addColumn(col);
col = new DataGridColumn("usCitizen");
col.width=100;
datagrid.addColumn(col);

 //设置数据源
 datagrid.dataProvider =recData;
 
 datagrid.autoHScrollAble = true;
 datagrid.visible = true;
 //设置列的标题
 var grid_header:Array =["id","姓","名","年龄","是否美国人"];
 datagrid.vScrollPolicy = "auto";
 for (var i = 0; i < grid_header.length; i++ ) {
	 datagrid.getColumnAt(i).headerText = grid_header[i];
	 }
	
		

 

 

  

 

 

分享到:
评论

相关推荐

    Flash和java的数据交互

    Java与Flash之间的数据交互,允许前端展示与后端数据服务紧密结合,实现动态内容的实时更新和用户交互。 实现Flash和Java的数据交互通常有两种主要方式:Socket通信和AMF(Action Message Format)。 1. **Socket...

    java_and_flash.rar_flash java_java flash

    Java和Flash是两种在Web...总之,Java与Flash的交互技术是一个综合了网络编程、数据交换格式和客户端服务器架构等多个领域的复杂主题。通过深入理解和掌握这些通信机制,开发者可以构建出更具创新性的跨平台Web应用。

    FLASH与JAVA的交互

    当谈到“Flash与Java的交互”,我们主要关注的是如何在Flash内容与Java应用程序之间建立通信桥梁,实现数据交换和功能调用。 1. **基础知识**: - Flash:Adobe Flash是一款创建互动内容、动画和应用程序的软件,...

    Flash builder 4.5学习-通过Java持久化FB数据-FB例程

    在本教程中,我们将深入探讨如何使用Flash Builder 4.5与Java进行集成,以便实现数据的持久化存储。Flash Builder 4.5是一款强大的开发工具,主要用于构建Flex和ActionScript应用程序,而Java则是一种广泛使用的后端...

    Flash与JAVA的Socket通信

    在Flash与Java之间建立Socket连接,可以实现实时、双向的数据交换,例如在线游戏、聊天室、数据同步等场景。 **Flash中的Socket通信** Flash Player支持Socket类,允许开发者创建和管理TCP套接字。使用Socket类,你...

    java新手上路flash教程

    4. **Java Applet和Flash**:讨论如何通过Java Applet在Web页面中运行Flash内容,以及Applet与Flash之间的数据交换。 5. **SWFObjects**:可能涉及如何使用SWFObjects库在HTML中嵌入Java和Flash应用。 6. **项目实践...

    flex如何跟JAVA结合

    AMF是一种高效的二进制数据序列化格式,Flex客户端和Java服务器之间可以通过AMF进行数据交换。Flex SDK包含AMF支持,可以通过 BlazeDS 或 LCDS(LiveCycle Data Services)等中间件来实现AMF通信。Java端使用Spring...

    flash+java通信例子

    4. **AMF(Action Message Format)**:这是一种二进制数据格式,常用于Flash与服务器之间的高效数据交换。Java可以通过开源库如BlazeDS或Red5来处理AMF数据。 5. **RTMP(Real Time Messaging Protocol)**:Flash...

    Flash与Java Servlet结合实现网上对战

    ### Flash与Java Servlet结合实现网上对战的关键技术点 #### 一、背景介绍 随着互联网技术的发展,网络游戏已经成为人们日常娱乐的重要组成部分。其中,利用Flash和Java Servlet开发的多人在线游戏因其互动性强、...

    java webservice flash在domino中的使用

    Java Web服务(Webservice)与Flash技术在IBM Lotus Domino环境中的整合是一个复杂而有趣的主题,它涉及了多种技术的交互。让我们深入探讨一下这个话题。 首先,Java Web服务是一种通过HTTP协议提供和消费的标准化...

    Java新手上路Flash教程

    还有可能是使用Java后端服务来驱动Flash前端的动态内容,例如通过AMF(Action Message Format)协议进行数据交换。 为了深入学习,你可能需要实践项目,比如创建一个简单的游戏或者互动展示。这将让你更好地理解...

    flex4与java结合实例

    在Flex4与Java的结合中,通常使用AMF(Action Message Format)或者HTTP/RESTful服务来实现客户端和服务器之间的数据交换。 1. AMF通信:AMF是一种高效的二进制序列化格式,用于Flex与Java之间的数据传输。Adobe的...

    flash+xml.rar_FLASH XML_flash java

    标题“flash+xml.rar”指的是一个压缩包文件,其中包含了与Flash和XML技术相关的资源,而“FLASH XML_flash java”可能是这个压缩包中的主要内容或者是描述,意味着它涉及到Flash平台使用XML和Java的技术应用。...

    Flex与Java通过实体传递数据

    Adobe的 BlazeDS 或 LCDS 服务提供了AMF的支持,使得Flex与Java之间的数据交换更加高效。 文件名“Flex与Java通过实体传递数据.docx”可能包含了一份详细教程或案例研究,涵盖了上述概念的实施步骤。而...

    Flash Builder4 下 LCDS + JAVA 配置方法详解

    本文旨在详细介绍如何在Flash Builder 4环境下完成LCDS与Java的配置过程,以实现动态数据交换及服务端功能开发。文中将涵盖以下主要步骤: 1. **安装Java与Tomcat** 2. **安装LCDS ES3** 3. **配置Flash Builder 4*...

    flash对于java的帮助文档

    1. **数据交互**:Flash与Java之间的数据交换通常通过AMF(Action Message Format)或XML/SOAP协议实现。AMF是一种高效的数据交换格式,特别适合于Flash和服务器之间的实时通信。XML或SOAP则提供了标准的接口规范,...

    java flash上传插件,动态调用.net的webapi

    - Flash插件与Java后台通过XMLSocket或HTTPRequest等通信协议进行数据交换。 2. **动态调用.NET WebAPI**: - .NET WebAPI是微软提供的用于构建RESTful服务的框架,它支持多种HTTP操作,如GET、POST、PUT等,适合...

    Flex和java后台结合的视频网站源码

    常见的Java后端框架有Spring、Struts、Hibernate等,它们可以有效地支持RESTful API的构建,与Flex前端进行数据交换。 3. **Flex与Java的通信**: Flex与Java之间的通信通常通过AMF(Action Message Format)或...

    Java与Flex开发入门

    通过使用AMF(Action Message Format)或其他数据交换格式,如JSON或XML,Java服务器可以与Flex客户端进行高效的数据通信。这种方式允许Flex应用程序充分利用Java的强大计算能力和企业级服务,同时保持富媒体和交互...

Global site tag (gtag.js) - Google Analytics