ph.xml如下:
<?xml version="1.0" encoding="utf-8"?> <data value="XX通讯录"> <user> <bn>办公室</bn> <xm>冯XX</xm> <bg>677598XX</bg> <tel>130760616XX</tel> </user> <user> <bn>销售处</bn> <xm>李XX</xm> <bg>427598XX</bg> <tel>158760616XX</tel> </user> <user> <bn>技术部</bn> <xm>张XX</xm> <bg>427598XX</bg> <tel>137760616XX</tel> </user> <user> <bn>财务部</bn> <xm>孙XX</xm> <bg>522598XX</bg> <tel>133760616XX</tel> </user> </data>
flex实现如下:
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <s:layout> <s:BasicLayout/> </s:layout> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.collections.ArrayList; import mx.controls.Alert; import mx.rpc.events.ResultEvent; private var d : XML; protected function button1_clickHandler(event:MouseEvent):void { http.send(); } public var arL : ArrayList = new ArrayList(); public var arrC : ArrayCollection = new ArrayCollection(); protected function http_resultHandler(event:ResultEvent):void { d = event.result as XML; arL = getArrayListForXml(d.children()); var i:int; var len:int = arL.length; for(i = 0; i < len; i++) { arrC.addItem({bn:arL.getItemAt(i).bn,xm:arL.getItemAt(i).xm,bg:arL.getItemAt(i).bg,tel:arL.getItemAt(i).tel}); } dataGrid1.dataProvider = arrC; } //XML转换成ArrayList private function getArrayListForXml(data:XMLList):ArrayList { var arrList : ArrayList = new ArrayList(); if(data != null) { for(var i:int = 0; i < data.length(); i++) { var obj : Object = new Object(); for(var j:int = 0; j < data[i].children().length(); j++) { var dataColoum : String = data[i].children()[j].localName(); obj[dataColoum] = data[i].children()[j].toString(); } arrList.addItem(obj); } } return arrList; } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> <s:HTTPService id="http" url="ph.xml" resultFormat="e4x" result="http_resultHandler(event)"> </s:HTTPService> </fx:Declarations> <mx:DataGrid x="37" y="36" width="358" height="193" id="dataGrid1"> <mx:columns> <mx:DataGridColumn headerText="部门名称" dataField="bn"/> <mx:DataGridColumn headerText="姓名" dataField="xm"/> <mx:DataGridColumn headerText="办公电话" dataField="bg"/> <mx:DataGridColumn headerText="手机号码" dataField="tel"/> </mx:columns> </mx:DataGrid> <s:Button x="430" y="36" label="导入数据" click="button1_clickHandler(event)"/> </s:Application>
效果如下:
相关推荐
- Java向Flex发送数据时,Java的数字类型会被转换为Flex的Number,字符串和布尔值保持不变,日期对象转换为Flex的Date,ArrayList转换为Flex的Array,Map转换为Flex的Object。 4. AMF(Action Message Format): ...
在Flex端,虽然DataTable对象本身不是原生的Flex类型,但可以将其转换为适合处理的Flex数据结构,例如ArrayCollection。通过解析返回的XML数据,我们可以将DataTable内容呈现在Flex的数据显示组件上。 总结来说,...
- 调用RemoteObject的方法,当服务端返回数据后,可以通过事件监听器处理数据,将ArrayList转换为Flex能识别的数据结构,如ArrayCollection。 4. **展示数据**: - 将从服务端获取的公告数据绑定到Flex界面组件,...
在跨平台开发中,Java与Flex作为两种广泛应用的技术栈,它们之间的数据交互与转换是开发者必须面对的问题之一。本文旨在梳理和总结Java对象与Flex对象之间的对应关系,为相关领域的开发者提供参考。 #### Java与...
`XMLList`是Flex中的XML数据容器,可以转换为`ArrayList`以适应Flex的数据模型。 4. String数据解析: 对于简单的字符串返回,处理起来相当直接。假设有一个返回字符串的`getString()`方法: ```actionscript ...
当数据返回时,可以遍历接收到的ArrayList,将每个NoticeInfo对象转换为Flex中的数据模型,显示在用户界面上。 通过以上步骤,我们可以利用Flex的RemoteObject与数据库进行高效、便捷的交互。这种方式不仅适用于...
例如,你可以用Spring、Hibernate等技术处理后端业务逻辑,然后通过BlazeDS将数据转换成AMF格式,传送给Flex前端。 此外,Flex的Tree控件还支持事件监听,例如点击节点时触发事件。我们可以通过添加Event听众来实现...
如果返回`ArrayList`,在Flex中它将被转换为`ArrayCollection`。 5. **在Flex中配置RemoteObject** - 在Flex项目中创建一个RemoteObject,指定其目的地为Java服务类(例如,`DataServiceImpl`)。 - 定义方法调...
在Flex面试中,考察的主要是开发者对Adobe Flex...以上是对Flex面试题目的详细解析,涵盖了类访问修饰符、类型转换、样式设置、布局管理、事件处理、XML数据绑定、界面构建等多个方面,展示了Flex开发所需的核心技能。
注意,从Java的ArrayList传递到Flex时,它会被自动转换为ArrayCollection,因此在Flex中可以方便地处理这些数据。 通过以上步骤,我们就成功实现了Flex与Java、SQLServer之间的数据交互。这种方式允许Flex应用程序...
- 服务返回的数据会被自动转换成Flex客户端的ActionScript对象,可以直接在Flex界面中使用。 总结来说,Flex通过HttpService、WebService和RemoteObject这三种方式间接连接数据库,它们各有优缺点,适用于不同的...
4. **与DataGrid绑定**:最后,我们将解析后的ArrayList对象设置为DataGrid的数据提供者,这样DataGrid就会根据提供的数据动态生成行。 ```actionscript dgDetail.dataProvider = list; ``` 通过以上步骤,我们...
总的来说,通过Java调用OpenAMF实例并将其结果转换为List或Bean,可以帮助我们更好地集成Flex或ActionScript 3应用,提升客户端与服务器之间的数据交互效率。这个过程涉及到对AMF协议的理解、OpenAMF库的使用以及...
文件"blazeds与java类型对应.pdf"和"As与Java类型对应表.pdf"很可能详细阐述了BlazDS如何将Flex中的ActionScript数据类型映射到Java的数据类型。ActionScript与Java之间的类型映射是BlazDS能够无缝集成Flex和Java的...
例如,它将Flex的Date对象映射到.NET的DateTime,将Array对象映射到ArrayList等。 4. **服务暴露**:在.NET端,开发者可以使用FluorineFx来暴露.NET类、方法和服务,使其可以被Flex客户端调用。这通常通过配置文件...
对于返回List的响应,客户端需要能够解析XML响应,将其转换回List对象。XFire的XMLBeans或JAXB支持可以帮助完成这项任务。 ```java ClientProxyFactoryBean factory = new ClientProxyFactoryBean(); factory....
4. 结果处理:将查询结果集转换为Java对象(如ArrayList或Bean),便于在前端展示。 接下来是CSS,它是用于描述HTML或XML(包括如SVG、MathML等各种XML方言)文档样式的样式表语言。在这个示例中,CSS将用于美化和...
- **编码**:将数据转换为特定格式的过程。 - **解码**:将编码后的数据恢复为原始形式。 - **应用场景**:网络传输、数据存储等。 #### 25. HTTP与HTTPS协议 - **HTTP**:超文本传输协议,不加密。 - **HTTPS**:...