Flex 对Java端返回Collection的处理方法--java 与flex对象的相互传递

将Flex与Spring集成后(BlazeDS 与Spring集成指南 ),第一个面临的问题就是:对于Java端返回的各种Java类型的对象,Flex中能否有相应的数据类型来映射。处理,尤其是List、Set、Map及POJO对象值。 在 BlazeDS 与Spring集成指南 例子的基础上,调整相关的测试代码如下: 1、Java端 1.1、com.yeeach.HelloWorldService package com.yeeach; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; public class HelloWorldService { public String hello(String var1) { return "hello " + var1; } public String world(String var1) { return "world " + var1; } public Map> getMap() { ArrayList list1=new ArrayList(); list1.add("value11"); list1.add("value12"); list1.add("value13"); ArrayList list2=new ArrayList(); list2.add("value21"); list2.add("value22"); list2.add("value23"); ArrayList list3=new ArrayList(); list3.add("value31"); list3.add("value32"); list3.add("value33"); HashMap> map=new HashMap>(); map.put("key1", list1); map.put("key2", list2); map.put("key3", list3); return map; } public ArrayList getList() { ArrayList list=new ArrayList(); Person p1=new Person(); p1.setName("name1"); p1.setPass("pass1"); Person p2=new Person(); p2.setName("name2"); p2.setPass("pass2"); Person p3=new Person(); p3.setName("name3"); p3.setPass("pass3"); list.add(p1); list.add(p2); list.add(p3); return list; } public Set getSet() { HashSet set=new HashSet(); Person p1=new Person(); p1.setName("name1"); p1.setPass("pass1"); Person p2=new Person(); p2.setName("name2"); p2.setPass("pass2"); Person p3=new Person(); p3.setName("name3"); p3.setPass("pass3"); set.add(p1); set.add(p2); set.add(p3); return set; } } 1.2、com.yeeach.Person package com.yeeach; public class Person { public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPass() { return pass; } public void setPass(String pass) { this.pass = pass; } private String name; private String pass; } 2、Flex 端 2.1、helloworld.mxml

2.2、com.yeeach.Person.as package com.yeeach { [Bindable] [RemoteClass(alias="com.yeeach.Person")] public class Person { public var name:String; public var pass:String; } } 3、总结: 1、JavaBean从Java端返回给Flex,可以通过Flex的Meta Tag [RemoteClass (alias=” “)]来标识服务器端对应的Java的类(一般为POJO对象)。 注意位置,是在class声明前。 2、Java Collection返回给Flex,都可以通过转化为mx.collections.ArrayCollection来进行处理。 3、Flex对于服务器端返回的java其他类型的处理,相对简单,可以参考 http://livedocs.adobe.com/flex/3/html/help.html?content=data_access_4.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值