flex tree 控件数据源从数据库读取

做了一个flex tree控件的例子,给新手点帮助,先把数据库中的表转化成xml文件,再给tree做数据源

/*此方法是把数据库读取结果集转化成xml*/
public static String convertResultSetToXML2(ResultSet rs) {
 StringBuffer sb = new StringBuffer();
 try {
  ResultSetMetaData rsmd = rs.getMetaData();
  if (rsmd.getColumnCount() >= 0)
   sb.append("<row label=/"root/">/n");//根的名字是root
   sb.append("/t<row label=/"Hello/">/n");//第二个根是Helo
   for (; rs.next(); sb.append("")) {
     sb.append((new StringBuilder("/t/t<")).append(
     "row label=/"").toString()).append(
     rs.getObject(2) != null ? rs.getObject(2) : "")
     .append("/"/>/n");//注意,(rs.getObject(2))我取表中的第二列
   }
   sb.append("/t</row>/n");
   sb.append("</row>/n");
 } catch (Exception e) {
  e.printStackTrace();
 }
 return sb.toString();
}

/*==========mxml代码==============*/

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
 <mx:Tree id="tree" x="23" y="10" width="204" height="459" labelField="@label" showRoot="true" creationComplete="loadTree()"></mx:Tree>
 <mx:Script>
  <![CDATA[
   import mx.controls.Alert;
   import mx.collections.ArrayCollection;
   import mx.rpc.events.ResultEvent;
   public function loadTree():void{
    
    dbiz.queryXML();//java后台方法
    dbiz.addEventListener(ResultEvent.RESULT,resultHandle);
   }
   public function resultHandle(e:ResultEvent):void{
    var arr:XMLList=XMLList(e.result);//把结果转化成XMLList
    //Alert.show(e.result.toString());
    this.tree.dataProvider=arr;
   }
  ]]>
 </mx:Script>
 <!--用Remote和java交互-->
 <mx:RemoteObject id="dbiz" destination="demoBiz"/>
</mx:Application>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值