后台生成XML格式,Flex通过解析赋值给DataGrid。
java后台生成XML样式:
<?xml version="1.0" encoding="UTF-8"?>
<list>
<User>
<id>2421</id>
<departId>443</departId>
<name>Divid</name>
<password>12345</password>
<trueName>王亚</trueName>
<sex>男</sex>
<address>北京</address>
<mobilePhone>13521157208</mobilePhone>
<email>603241032@qq.com</email>
<createTime class="sql-timestamp">2013-01-29 17:19:32.0</createTime>
<editTime class="sql-timestamp">2013-01-29 17:19:32.0</editTime>
<createName>郭飞</createName>
<createId>1</createId>
<createPhone>13521157209</createPhone>
<descr>员工</descr>
<updateUserId>0</updateUserId>
<userState>不启用</userState>
</User>
<User>
<id>2403</id>
<departId>582</departId>
<name>Lance</name>
<password>12345</password>
<trueName>黎明</trueName>
<sex>男</sex>
<address>北京</address>
<mobilePhone>18869365245</mobilePhone>
<email>5698521@163.com</email>
<createTime class="sql-timestamp">2013-01-29 13:19:40.0</createTime>
<editTime class="sql-timestamp">2013-01-29 13:19:40.0</editTime>
<createName>王刚</createName>
<createId>1</createId>
<createPhone>13521157209</createPhone>
<descr>员工</descr>
<updateUserId>0</updateUserId>
<userState>不启用</userState>
</User>
<User>
<id>1</id>
<departId>561</departId>
<name>Allen</name>
<password>12345</password>
<trueName>王刚</trueName>
<sex>男</sex>
<address>北京</address>
<mobilePhone>13521157209</mobilePhone>
<email>603241032@qq.com</email>
<createTime class="sql-timestamp">2012-12-13 00:00:00.0</createTime>
<editTime class="sql-timestamp">2013-01-29 13:14:34.0</editTime>
<createName>王刚</createName>
<createId>1</createId>
<createPhone>13521157209</createPhone>
<descr>员工</descr>
<updateUserId>0</updateUserId>
<userState>1</userState>
</User>
</list>
解析XML:
<?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"
initialize="init()"
>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable] public var xmlListColl:XMLList;
[Bindable]public var userXmlListColl:ArrayCollection;
function init(){
}
public function getUserDepart(index:String):void{
try{
userXmlListColl = new ArrayCollection();
for(var i:int = 0;i < xmlListColl.length() ; i++){
var obj:Object = {
id: xmlListColl[i].id,
name : xmlListColl[i].name,
sex : xmlListColl[i].sex,
trueName : xmlListColl[i].trueName,
address : xmlListColl[i].address,
descr : xmlListColl[i].descr,
mobilePhone : xmlListColl[i].mobilePhone,
email : xmlListColl[i].email,
userState : xmlListColl[i].userState,
password : xmlListColl[i].password
}
}
userXmlListColl.addItem(obj);
}catch(error:Error){
}
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<mx:DataGrid x="210" y="184" id="datagrid" dataProvider="{userXmlListColl}">
<mx:columns>
<mx:DataGridColumn headerText="用户名" dataField="name"/>
<mx:DataGridColumn headerText="密码" dataField="password"/>
<mx:DataGridColumn headerText="地址" dataField="address"/>
</mx:columns>
</mx:DataGrid>
</s:Application>