Flex Tree的数据源从数据库查出并且显示在Tree中

首先来看效果图:


废话少说,来看代码

java端:

因为有节点,所以我将从数据库查找出来的值,封装成一个XMLBean;

public class XmlBean {
	 
	private String planid;// 预案id
	 
	private String planname;// 预案名称
	 //此变量的名字必须是children否则在页面中不会显示子节点
	public List<XmlBean> children = new ArrayList<XmlBean>();// 预案对象的集合
} 

实现类:Flex执行此方法,


	public List<XmlBean> planexamine() {
		List<XmlBean> list = new ArrayList<XmlBean>();
             //向XMLBean中设置值,此值应该是数据库中查找出来的
		XmlBean xb1 = new XmlBean();
		xb1.setPlanid("4");
		xb1.setPlanname("未通过");
		xb1.children = planexamine1("4");//调用方法
		list.add(xb1);
		XmlBean xb2 = new XmlBean();
		xb2.setPlanid("3");
		xb2.setPlanname("通过");
		xb2.children = planexamine1("3");
		list.add(xb2);
		XmlBean xb3 = new XmlBean();
		xb3.setPlanid("1");
		xb3.setPlanname("未审核");
		xb3.children = planexamine1("1");
		list.add(xb3);
		return list;
	}

java端被调用的方法,连接数据库,查找值:

public static List<XmlBean> planexamine1(String typeid) {
	   
		List<XmlBean> list = new ArrayList<XmlBean>();
		Connection conn = null;
		CallableStatement castma = null;
		ResultSet rs = null;
		try {
			conn = DbManager.getInstance().getConnection();// 得到连接
			castma = conn.prepareCall("call YJCZPKG.FIND_PLANEXAMINE(?,?)");
			castma.setString(1, typeid);
			castma.registerOutParameter(2, OracleTypes.CURSOR);
			castma.execute();
			rs = (ResultSet) castma.getObject(2);
			XmlBean srt;
			while (rs.next()) {
				srt = new XmlBean();
				srt.setPlanid(rs.getString("PLANID"));
				srt.setPlanname(rs.getString("PLANNAME"));
				list.add(srt);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			DbManager.getInstance().closeAll(rs, castma, conn);
		}

		return list;
	}




Flex端返回结果:

private function resultplan(event:ResultEvent):void
{
	var arr:ArrayCollection=event.result as ArrayCollection;
	myTree.dataProvider=arr;
}

Tree:

    <common:TitledBorderBox title="XXXX列表"
                                height="100%"
                                width="25%">
     <mx:Tree id="myTree"
                     width="100%"
                     height="100%"
                     doubleClickEnabled="true"
                     fontSize="12"
                     doubleClick="fnshow()"
                     labelField="planname">//与Bean中的名字相同

       </mx:Tree>
        </common:TitledBorderBox>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值