`

BlazeDS VO 映射

    博客分类:
  • Flex
阅读更多

做个备忘。

 

Flex中的Feature.as映射自Java中的Feature.java 。

 

Flex中的Feature类需要绑定Java中的Feature类。

package hashmap
{
	[Bindable]
	[RemoteClass(alias="hashmap.Feature")]
	public class Feature
	{
		public var FeatureID:String;
		public var FeatureName:String;
		public var FeatureImageURL:String;
		public var FeatureWidth:String;
		public var FeatureHeight:String;
		 
		public function Feature(){
		}
		 
//		public function Feature(ID:String, Name:String, ImageURL:String, Width:String, Height:String){
//			this.FeatureID = ID;
//			this.FeatureName = Name;
//			this.FeatureImageURL = ImageURL;
//			this.FeatureWidth = Width;
//			this.FeatureHeight = Height;
//		}
		
		public function getFeatureID():String{
			return FeatureID;
		}
		public function setFeatureID(featureID:String):void{
			this.FeatureID = featureID;
		}
		
		public function getFeatureName():String{
			return FeatureName;
		}
		public function setFeatureName(featureName:String):void{
			this.FeatureName = featureName;
		}
		
		public function getFeatureImageURL():String{
			return FeatureImageURL;
		}
		public function setFeatureImageURL(featureImageURL:String):void{
			this.FeatureImageURL = featureImageURL;
		}
		
		public function getFeatureWidth():String{
			return FeatureWidth;
		}
		public function setFeatureWidth(featureWidth:String):void{
			this.FeatureWidth = featureWidth;
		}
		
		public function getFeatureHeight():String{
			return FeatureHeight;
		}
		public function setFeatureHeight(featureHeight:String):void{
			this.FeatureHeight = featureHeight;
		}
	}
}

 

Java中的Feature类需要实现java.io.Serializable

package hashmap;

public class Feature  implements java.io.Serializable
{
	public String FeatureID;
	public String FeatureName;
	public String FeatureImageURL;
	public String FeatureWidth;
	public String FeatureHeight;

	public Feature(){
		
	}
	
	public Feature(String ID, String Name, String ImageURL, String Width, String Height){
		this.FeatureID = ID;
		this.FeatureName = Name;
		this.FeatureImageURL = ImageURL;
		this.FeatureWidth = Width;
		this.FeatureHeight = Height;
	}

	public String getFeatureID() {
		return FeatureID;
	}

	public void setFeatureID(String featureID) {
		FeatureID = featureID;
	}

	public String getFeatureName() {
		return FeatureName;
	}

	public void setFeatureName(String featureName) {
		FeatureName = featureName;
	}

	public String getFeatureImageURL() {
		return FeatureImageURL;
	}

	public void setFeatureImageURL(String featureImageURL) {
		FeatureImageURL = featureImageURL;
	}

	public String getFeatureWidth() {
		return FeatureWidth;
	}

	public void setFeatureWidth(String featureWidth) {
		FeatureWidth = featureWidth;
	}

	public String getFeatureHeight() {
		return FeatureHeight;
	}

	public void setFeatureHeight(String featureHeight) {
		FeatureHeight = featureHeight;
	}
	
}

 

Java中的方法,返回HashMap:

package hashmap;

import java.util.*;

public class TestHashMap {
	public HashMap<String, List<Feature>> getHashMap(){
		ArrayList<Feature> shapeList=new ArrayList<Feature>(); 
		Feature shape1 = new Feature("1","AAA","URL1","","");
		Feature shape2 = new Feature("2","AAA","URL2","","");
		Feature shape3 = new Feature("4","AAA","URL3","","");
		shapeList.add(shape1); 
		shapeList.add(shape2); 
		shapeList.add(shape3); 
        ArrayList<Feature> sizeList=new ArrayList<Feature>(); 
		Feature size1 = new Feature("5","AAA","","1.3","2.1");
		Feature size2 = new Feature("7","AAA","","2.5","3.0");
		Feature size3 = new Feature("11","AAA","","3.3","3.8");
		Feature size4 = new Feature("24","AAA","","3.3","3.8");
		sizeList.add(size1); 
		sizeList.add(size2); 
		sizeList.add(size3); 
		sizeList.add(size4); 
        ArrayList<Feature> MaterialList=new ArrayList<Feature>(); 
		Feature Material1 = new Feature("43","AAA","","","");
		Feature Material2 = new Feature("44","AAA","","","");
		Feature Material3 = new Feature("57","AAA","","","");
		MaterialList.add(Material1); 
		MaterialList.add(Material2); 
		MaterialList.add(Material3);        
        HashMap<String,List<Feature>> map=new HashMap<String,List<Feature>>(); 
        map.put("Shape", shapeList); 
        map.put("Size", sizeList); 
        map.put("Material", MaterialList);
        return map; 
	}
}
 

Flex中的index.mxml :

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
		
	<mx:Button click="getHashMap()" label="GetHashMap" x="43" y="134"/>
	<mx:List id="lst" dataProvider="{acShape}" labelField="FeatureName" x="10" y="164"/>
	<!--<mx:DataGrid id="dg" dataProvider="{acShape}" x="12" y="167"/>-->
	
	<mx:RemoteObject id="roHashMap" destination="testHashMap" result="resultHashMap(event)" fault="faultHashMap(event)"/>
	
	<mx:Script>
		<![CDATA[
	import mx.collections.ArrayCollection;
	import mx.rpc.events.FaultEvent;
	import mx.rpc.events.ResultEvent;
	import mx.controls.Alert;
	import hashmap.Feature;
	
	private var sResultHashMap:String;
	[Bindable]
	private var obj:Object = new Object();
	[Bindable]
	private var acShape:ArrayCollection = new ArrayCollection();
	private function getHashMap():void{
		roHashMap.getHashMap(); 
	}
	private function resultHashMap(event:ResultEvent):void{
		acShape.removeAll();
		
		obj = event.result as Object;
		for each(var fea:Feature in obj.Shape){
			acShape.addItem(fea);
			trace(fea.FeatureName);
		}
	}
	
	private function faultHashMap(event:FaultEvent):void{
		sResultHashMap = event.fault.message.toString();
		Alert.show("error:\n" + sResultHashMap);
	}
	
		]]>
	</mx:Script>
</mx:Application>

 

WebRoot\WEB-INF\flex\remoting-config.xml  中添加:

	<destination id="testHashMap">
		<properties>
			<source>hashmap.TestHashMap</source>
		</properties>
	</destination>
 

 

 

 

分享到:
评论

相关推荐

    blazeds4.7官方下载

    BlazeDS是Adobe公司开发的一款开源的服务器端技术,它主要负责实现Java应用程序与客户端的Flex应用程序之间的数据交互。BlazeDS的出现极大地推动了富互联网应用(RIA)的发展,使得开发者可以利用Flex的图形界面优势...

    Spring BlazeDS Integration Spring集成BlazeDS

    2. **配置Spring**:在Spring的配置文件中定义远程对象 bean,映射到BlazeDS服务端的Java类和方法。 3. **创建Flex客户端**:在Flex项目中,使用RemoteObject组件创建与服务器端的连接,并声明要调用的远程方法。 ...

    Blazeds入门教程.doc

    - 主要功能包括:映射Java对象到Flex对象、支持实时消息协议(RTMP)、代理服务、服务器端PDF生成等。 - 官方提供免费版本,但也存在付费版本以获取更多高级功能。 3. **Blazeds** - Blazeds是Adobe从LCDS中分离...

    BlazeDS,PureMVC

    BlazeDS通信到Java的PureMVC——Flex框架,BlazeDS的服务器配置比较麻烦,这里使用的是直接下载blazeds_turnkey_3-0-0-544.zip中的tomcat BlazeDS模板路径为: blazeds_turnkey_3-0-0-544.zip解压后路径\tomcat\...

    Flex Blazeds入门教程

    ### Flex Blazeds入门教程详解 #### 一、引言 Flex Blazeds入门教程,由刘铭朝撰写于2008年3月21日,旨在解决开发者在搭建Flex与LCDS(Flex Data Services)工程时遇到的常见问题。这篇教程不仅详细介绍了创建项目...

    blazeds 服务器war包

    Blazeds是一款强大的Flex和Java之间的消息传递中间件,它由Adobe公司开发,主要用于构建富互联网应用程序(RIA)。本文将详细介绍Blazeds的核心概念、功能以及如何使用它。 Blazeds,全称BlazeDS,是Adobe Flex和...

    blazeds4.0.1

    这个版本包含了两个主要的战争(war)文件:blazeds.war 和 blazeds-spring.war,以及它们对应的解压后的文件夹。这些资源都是为了帮助开发者在Java EE环境中集成Flex和ActionScript客户端应用。 1. **BlazeDS**: ...

    FLex与Java交互必备blazeds

    Blazeds是Adobe官方推出的一款开源项目,全称为Flex Business Application Platform,它是Flex与Java应用程序之间进行数据交互的重要桥梁。Flex是一种基于ActionScript的富互联网应用程序(RIA)开发框架,而Java则...

    Blazeds与java通信

    Blazeds是一个强大的Java服务器端技术,主要用于实现Flex(一种基于Adobe Flash的用户界面开发工具)与后端Java应用程序之间的数据交互。它提供了一个全面的解决方案,使开发人员能够构建富互联网应用程序(RIA),...

    blazeds-bin-4.0.0.15974.zip

    5. **Flex到Java的类型映射**:BlazeDS自动处理ActionScript和Java对象之间的类型转换,使得跨语言开发更加便捷。 6. **事件驱动模型**:BlazeDS支持事件驱动编程,使得客户端可以响应服务器端的事件,提高了交互性...

    BlazeDS开发者指南中文版

    BlazeDS是Adobe公司推出的一款开源的服务器端技术,它主要负责在客户端(通常是Web浏览器)与服务器之间提供实时的数据通信。此技术基于AMF(Action Message Format)协议,允许高效地传输数据,同时支持Flex和...

    blazeds-turnkey-4.0

    Blazeds Turnkey 4.0 是一个强大的技术框架,专为实现Flex应用程序与Java Enterprise Edition (JEE) 服务器之间的高效通信而设计。这个项目提供了全面的功能,使得开发人员可以构建富互联网应用(RIA)时,充分利用...

    blazeds和flex整合

    BlazeDS与Flex整合是构建富互联网应用程序(RIA)的一种常见技术组合,它允许开发者创建交互性强、用户体验丰富的Web应用。BlazeDS是Adobe提供的一个开源服务器端数据推送技术,而Flex是用于创建RIA的客户端开发框架...

    blazeDS war包及Flex结合blazeDS的入门程序

    ### BlazeDS War包及Flex结合BlazeDS的入门程序 #### 一、BlazeDS简介与功能 BlazeDS是一款由Adobe开发的开源服务器端软件,主要用来支持远程调用和消息传递服务。它能够实现Java应用服务器和Flex客户端之间的通信...

    blazeds flash开源服务器

    Blazeds,全称为BlazeDS,是一款由Adobe公司开发并开源的服务器端技术,它主要为Flash客户端提供数据服务,使Flash与后端服务器能够进行高效的数据交互。Blazeds是基于Java平台的,利用Action Message Format (AMF)...

    blazeds-4.0.13.war

    在这个目录下,我们可以找到“web.xml”,这是Web应用的部署描述符,定义了应用的配置、Servlet映射、过滤器等关键设置。此外,“WEB-INF/classes”通常存放编译后的Java类,而“WEB-INF/lib”则包含应用所需的JAR...

    blazeds使用步骤和包

    Blazeds,全称为BlazeDS,是Adobe公司推出的一款开源服务器端技术,主要用于实现Flex客户端与Java后端之间的数据交互。它是一个轻量级的中间件,支持AMF(Action Message Format)协议,能够高效地传输数据,提高富...

    blazeds-turnkey-4.0.0.14931

    3. **数据代理服务**:BlazeDS提供了数据管理服务,可以将Java数据对象透明地映射到Flex客户端,简化了数据绑定和操作过程。 4. **通道集**:BlazeDS支持多种通信通道,如HTTP、HTTP Streaming、HTTP Polling和...

    flex与Myeclipse、blazeds整合开发

    整合开发Flex、MyEclipse和Blazeds的过程涉及到了多种技术的融合,下面将详细介绍这一过程所包含的关键知识点。 首先,了解JDK环境的配置。JDK是Java开发的基础,其环境配置包括安装JDK、设置JAVA_HOME环境变量、...

    Flex Spring JAVA BLAZEDS整合

    【Flex Spring JAVA BLAZEDS整合】是一种技术实践,它将Adobe Flex的前端展示层与Spring框架的后端业务逻辑层紧密结合,利用BlazeDS作为中间件进行数据传输。Flex作为一个强大的RIA(富互联网应用程序)开发平台,常...

Global site tag (gtag.js) - Google Analytics