`
柴秉承
  • 浏览: 88143 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

as对象与java对象的转换

    博客分类:
  • FLEX
阅读更多

java对象不能直接转换为flex对象,所以需要创建一个as对象对应java对象,并且以[RemoteClass(alias="hello.User")] 
来指定对应的java对象类。下面我就以一个简单的例子来诠释交互

此例子在上一个例子中稍作改动即可应用

java类

User代码 复制代码 收藏代码
  1. package hello;   
  2.   
  3. public class User {   
  4.   
  5.     private long id;   
  6.     private String name;   
  7.     private String password;   
  8.     private long age;   
  9.     public long getId() {   
  10.         return id;    
  11.     }   
  12.     public void setId(long id) {   
  13.         this.id = id;   
  14.     }   
  15.     public String getPassword() {   
  16.         return password;   
  17.     }   
  18.     public void setPassword(String password) {   
  19.         this.password = password;   
  20.     }   
  21.     public long getAge() {   
  22.         return age;   
  23.     }   
  24.     public void setAge(long age) {   
  25.         this.age = age;   
  26.     }   
  27.     public String getName() {   
  28.         return name;   
  29.     }   
  30.     public void setName(String name) {   
  31.         this.name = name;   
  32.     }   
  33.        
  34. }  
package hello;

public class User {

	private long id;
	private String name;
	private String password;
	private long age;
	public long getId() {
		return id; 
	}
	public void setId(long id) {
		this.id = id;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public long getAge() {
		return age;
	}
	public void setAge(long age) {
		this.age = age;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
}

 

 as

 

As代码 复制代码 收藏代码
  1. package   
  2. {   
  3. [RemoteClass(alias="hello.User")]     
  4.     public class User    
  5.     {   
  6.      public  var name:String;   
  7.      public  var password:String;   
  8.      public var age:int;   
  9.      public var id:int;   
  10.         public function User()   
  11.         {   
  12.         }   
  13.     }    
  14. }  
package
{
[RemoteClass(alias="hello.User")]  
	public class User 
	{
     public  var name:String;
     public  var password:String;
     public var age:int;
     public var id:int;
		public function User()
		{
		}
	} 
}

 

 mxml

 

Mxml代码 复制代码 收藏代码
  1. <?xml   version = "1.0"   encoding = "utf-8" ?>         
  2. <mx:Application   xmlns:mx = "http://www.adobe.com/2006/mxml" >         
  3. <mx:Script >         
  4.   <![CDATA[    
  5.   import mx.rpc.events.FaultEvent;       
  6.   import mx.rpc.events.ResultEvent;       
  7.   import mx.controls.Alert;   
  8.       [Bindable]       
  9.       private var helloResult:String;   
  10.          [Bindable]          
  11.       private var user:User = new User();       
  12.       private function sayHelloTo():void {    
  13.         user.name = inputText.text;    
  14.         ro.sayHelloTos(user);      
  15.         ro.addEventListener(ResultEvent.RESULT,resultHandler);   
  16.         }       
  17.            
  18.        private function resultHandler(event:ResultEvent):void {       
  19.                  user  = event.result as User;   
  20.                 if(null!=user){    
  21.                     inputName.text=user.name;   
  22.                     helloResult = user.name;   
  23.                 }else{    
  24.                     Alert.show("空值");   
  25.                 }    
  26.              } ]]>       
  27.  </mx:Script >          
  28.          <mx:RemoteObject id="ro" destination="helloworld" />         
  29.          <mx:RemoteObject id="users" destination="user">   
  30.             <mx:method name="user">   
  31.             </mx:method>             
  32.           </mx:RemoteObject>   
  33.          <mx:HBox width = "100%">          
  34.            <mx:TextInput id = "inputText" name="user.name"/>         
  35.            <mx:TextInput id="inputName" name="user.name"/>   
  36.            <mx:Button label = "Submit"   click = "sayHelloTo()" />         
  37.          </mx:HBox >   
  38.          <mx:Label text = "{helloResult}" />   
  39.     
  40.   </mx:Application>        
  41.        
  42.       
<?xml   version = "1.0"   encoding = "utf-8" ?>      
<mx:Application   xmlns:mx = "http://www.adobe.com/2006/mxml" >      
<mx:Script >      
  <![CDATA[ 
  import mx.rpc.events.FaultEvent;    
  import mx.rpc.events.ResultEvent;    
  import mx.controls.Alert;
      [Bindable]    
      private var helloResult:String;
         [Bindable]       
      private var user:User = new User();    
      private function sayHelloTo():void { 
      	user.name = inputText.text; 
        ro.sayHelloTos(user);   
        ro.addEventListener(ResultEvent.RESULT,resultHandler);
        }    
        
       private function resultHandler(event:ResultEvent):void {    
                 user  = event.result as User;
                if(null!=user){ 
                	inputName.text=user.name;
                	helloResult = user.name;
                }else{ 
                	Alert.show("空值");
                } 
             } ]]>    
 </mx:Script >       
         <mx:RemoteObject id="ro" destination="helloworld" />      
         <mx:RemoteObject id="users" destination="user">
            <mx:method name="user">
            </mx:method>         	
          </mx:RemoteObject>
         <mx:HBox width = "100%">       
           <mx:TextInput id = "inputText" name="user.name"/>      
           <mx:TextInput id="inputName" name="user.name"/>
           <mx:Button label = "Submit"   click = "sayHelloTo()" />      
         </mx:HBox >
         <mx:Label text = "{helloResult}" />
 
  </mx:Application>     
	
	

 

  java服务类

 

Java代码 复制代码 收藏代码
  1. package hello;   
  2.   
  3. public class HelloWorld {   
  4.   
  5.     public HelloWorld(){   
  6.     }   
  7.     public User sayHelloTos(User user) {   
  8.         System.out.println(user.getName());   
  9.         return user;      
  10.     }   
  11. }    
  12.    
package hello;

public class HelloWorld {

	public HelloWorld(){
	}
	public User sayHelloTos(User user) {
		System.out.println(user.getName());
		return user;   
	}
} 
 

   通信配置xml

 

 

Xml代码 复制代码 收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <service id="remoting-service"    
  3.     class="flex.messaging.services.RemotingService">  
  4.   
  5.     <adapters>  
  6.         <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>  
  7.     </adapters>  
  8.   
  9.     <default-channels>  
  10.         <channel ref="my-amf"/>  
  11.     </default-channels>  
  12.        
  13.   <destination id="helloworld">           
  14.       <properties>          
  15.           <source>hello.HelloWorld</source>    
  16.         </properties>          
  17.   </destination >    
  18.   
  19. </service>
分享到:
评论

相关推荐

    Java2As3_Java_对象_转换_AS3_对象

    本程序用于将java对象转换为AS对象 Java2As3.fxp 是Java2As3.exe的许可文件 Java2As3.exe 是windows 安装包,如果不用工程跑,可先安装AdobeAIRInstaller,再安装Java2As3.exe。 Java2As3.p12是源代码,使用方式...

    Java转AS3.0工具 java类转换工具

    5. **事件驱动**:AS3.0的事件驱动模型与Java的回调函数和监听器有所不同,这可能导致转换后需要额外的适配工作。 6. **内存管理**:Java使用垃圾回收机制,而AS3.0的内存管理也依赖于垃圾回收,但两者的具体实现和...

    java的JsonObject对象提取值方法

    在Java编程中,`JsonObject` 是用来处理JSON数据的一个关键对象。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛应用于网络通信及数据存储。本篇将详细介绍如何在Java中使用`JsonObject`来...

    Java转AS3.0工具

    - **语言特性差异**:虽然Java和AS3.0都是面向对象的语言,但它们的特性和库并不完全匹配,转换时可能会丢失某些Java特有的功能。 - **性能与兼容性**:AS3.0运行在Flash Player或AIR环境中,其性能可能不同于原生...

    AS3+JAVA网游开发数据交互源码.rar

    - **序列化**:将对象转换为可传输的格式,以便在网络中发送。 - **反序列化**:接收数据流后将其恢复为原来的对象结构。 - **事件驱动编程**:在AS3中,事件监听器和处理器用于处理网络通信中的异步操作。 - **...

    java list和xml互转例子

    本示例涉及的核心知识点是将Java中的List对象与XML文档进行相互转换。这里,我们使用的库是dom4j-1.6.1.jar,这是一个强大的Java XML处理库。 首先,让我们详细了解一下List和XML。List是Java集合框架的一部分,它...

    java.lang.IllegalArgumentException Cannot format given Object as a Date

    这个类是Java日期时间API的一部分,用于将日期和时间对象转换为字符串,或将字符串解析为日期对象。它依赖于模式字符串来定义日期和时间的格式。例如,模式"yyyy-MM-dd"将格式化日期为四位年份、连接符、两位月份和...

    JPublisher生成Oracle对象类型对应的Java对象例子

    标题“JPublisher生成Oracle对象类型对应的Java对象例子”指的是使用JPublisher工具将Oracle数据库中的自定义对象类型转换为Java代码的过程。这通常涉及到以下几个步骤: 1. **创建Oracle对象类型**:首先,在...

    使用jackson完成json与Java对象互转

    Jackson库是Java领域中处理JSON的利器,它提供了高效且灵活的API来实现JSON与Java对象之间的转换。本文将详细介绍如何使用Jackson库进行JSON与Java对象的互转。 首先,我们需要引入Jackson库的依赖。对于Maven项目...

    俄罗斯方块-as vs java

    《俄罗斯方块——AS与Java的碰撞》 在IT领域,游戏开发一直是技术与创意的交汇点,而作为经典中的经典,《俄罗斯方块》无疑是游戏史上的瑰宝。本篇文章将探讨如何使用ActionScript(AS)和Java这两种编程语言来实现...

    Android JNI中C++层与Java层的对象交互实例

    5. **引用管理**:使用`NewLocalRef`、`DeleteLocalRef`、`NewGlobalRef`和`DeleteGlobalRef`管理Java对象的生命周期。 理解并熟练掌握这些知识点对于在Android应用中利用JNI进行高性能计算或调用原生库至关重要。...

    java将Word转换成PDF插件

    Java是一种广泛使用的编程语言,尤其在企业级应用开发中占据重要地位。然而,有时我们需要处理文档格式的...这些知识点对于开发在Java环境中需要与Windows原生应用交互或者处理文档转换的开发者来说,是非常重要的。

    处理对象与xml之间的转换demo

    // 将User对象转换为XML字符串 Unmarshaller unmarshaller = context.createUnmarshaller(); User newUser = (User) unmarshaller.unmarshal(new StreamSource(new StringReader(xmlString))); // 将XML字符串转换...

    Java程序把Word文档直接转换成Html文件

    Java程序把Word文档直接转换成Html文件 Java程序把Word文档直接转换成Html文件是通过使用Java和COM组件实现的。COM组件是Windows操作系统中的一种组件对象模型,它允许不同的应用程序之间进行交互。在本文中,我们...

    ActionScript3类型与java数据类型对应表.rar

    - AS3提供了is和as操作符来检查和转换类型,而Java通常通过instanceof关键字来检查一个对象是否属于特定类或接口。 9. 泛型: - Java引入了泛型,允许在编译时指定集合元素的类型,而AS3虽然没有直接的泛型概念,...

    java解析DWG文件为json使用superMap

    注意,实际的代码实现会涉及到SuperMap iObjects Java的具体API,例如使用`DataFactory`类加载DWG文件,然后使用`Dataset`和`Feature`对象处理地理数据,最后使用JSON库(如Jackson或Gson)将数据转换为JSON格式。...

    java对象在前台flex的datagrid中显示

    我们需要将从服务器获取的Java对象转换为这些数据集,然后绑定到DataGrid,以实现数据的动态展示。 4. **DataGrid配置**:定义DataGrid的列结构,包括列标题、数据类型以及如何从数据源提取数据。可以使用MXML或...

    使用Java开发的OCR程序 根据图像识别转换成中文

    然后,我们可以创建一个TessBaseAPI对象,这是Tess4J的核心类,用于与Tesseract引擎交互。 接下来,我们讨论图像预处理。由于图像质量、光照、角度等因素可能影响识别准确率,所以在识别前通常需要对图像进行预处理...

    java实现excel转换成html

    Java作为一种强大的编程语言,提供了多种库来处理这样的任务,其中一个常用的工具是Jacob库,它允许Java程序与Microsoft Office进行交互。 标题"java实现excel转换成html"指出,我们将使用Java编程语言,通过Jacob...

    Flex类图和与Java交互时类型转换对照

    - `String`:在Flex中,字符串是AS3的基本类型,与Java中的`String`相匹配。 - `Number`:在AS3中,Number可以表示整数或浮点数,对应Java的`double`。 - `Boolean`:在Flex中,布尔值与Java的`boolean`相对应。 ...

Global site tag (gtag.js) - Google Analytics