




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
如何来做一棵递归树,这在前面的文章中有提过,但那是引用了myfaces组件的,今天就不用啥组件了,直接输出树的结构形状.数据库表数据一样,但还是在此重复一次。我们的目标是:完成以下形态的树状.-管理-高级管理员-增加-删除-修改-普通管理员-增加一、建表/*-树形菜单 节点编号 节点名称 节点链接址 些节点父节点 是否最底节点 节点排序(一般用在同级节点上) 节点说明 */drop table EPTreeTable create table EPTreeTable( TreeNodeId int identity(1,1) constraint pk_TreeNode primary key, TreeNodeName varchar(50) not null, TreeNodeLink varchar(100) , TreeNodeFatherId int default 0, -0 为最高层 TreeNodeIsBottom bit default 1, -1 为底层 0为非底层 TreeNodeCompositor int default 1, - 默认排在最后面 TreeNodeExplain varchar(200) )二、JAVA代码(1)TO对象/* author fangbiao* 用于映射父级菜单TO对象*/public class ParentResourcePojo /* * 节点编号 */private int treeNodeId;/* * 节点名称 */private String treeNodeName;/* * 父节点 */private int treeParentNodeId;/* * return treeNodeName */public String getTreeNodeName() return treeNodeName;/* * param treeNodeName 要设置的 treeNodeName */public void setTreeNodeName(String treeNodeName) this.treeNodeName = treeNodeName;/* * return treeParentNodeId */public int getTreeParentNodeId() return treeParentNodeId;/* * param treeParentNodeId 要设置的 treeParentNodeId */public void setTreeParentNodeId(int treeParentNodeId) this.treeParentNodeId = treeParentNodeId;/* * return treeNodeId */public int getTreeNodeId() return treeNodeId;/* * param treeNodeId 要设置的 treeNodeId */public void setTreeNodeId(int treeNodeId) this.treeNodeId = treeNodeId;(2)树形组合/* * 获取节点选择列表信息 * return */public List getResourceList()if(resourceList.size() = 0) /获取高级的父节点resourceList = doTurnParentToTree(itbs.getTopParentResource();return resourceList;private int num =2;private int tempTotalChildren ;private boolean temp = false;private int tempParent; /每次递归节点的父节点/* * 对父级列表进行树排 * param prp * return */private synchronized List doTurnParentToTree(ParentResourcePojo prp)if(prp = null)return null;List list = getChildrenList(prp); /分线tempParent = prp.getTreeParentNodeId();String str = ;if(tempParent = 0)resourceList.add(-+prp.getTreeNodeName();elseresourceList.add(prp.getTreeNodeName();/每棵树的节点数目tempTotalChildren = list.size();Iterator iterator = list.iterator(); while(iterator.hasNext()ParentResourcePojo treePojo = (ParentResourcePojo)iterator.next();if(tempParent != 0)if( tempParent treePojo.getTreeParentNodeId()num -=1;temp = false;else if( tempParent = treePojo.getTreeParentNodeId() )if(tempTotalChildren =0)temp = false;elsetemp = true;for(int i=0;inum;i+)str = str + -;treePojo.setTreeNodeName(CommonUtil.doAddAppendString(str,treePojo.getTreeNodeName();str = ;doTurnParentToTree(treePojo); return resourceList;/* * 父级菜单列表 */private List allParentTreeList = null; /* * 做标记用 */private int flag = 0;/* * 获取所有父级菜单列表树 * return */private List getAllParentTreeList()if(allParentTreeList = null)if(flag = 0)flag = 1;allParentTreeList = itbs.getRRCResource();return allParentTreeList;return allParentTreeList;return allParentTreeList;/* * 取子树列 * param prp * return */private List getChildrenList(ParentResourcePojo prp)List list = getAllParentTreeList();int listLength = list.size();List newReturnList = new ArrayList();if(listLength = 0)return newReturnList;List leaveList = new ArrayList();for(int i=0;ilistLength;i+)ParentResourcePojo prPojo = (ParentResourcePojo)list.get(i);int treePojoTreeParantNodeId = prPojo.getTreeParentNodeId();int tpTreeNodeId = prp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit 7 At school说课稿-2023-2024学年小学英语四年级上册牛津上海版(深圳用)
- 淘宝经理专业知识培训课件
- 2023二年级数学上册 一 100以内的加法和减法(三)第1课时 连加、连减说课稿 苏教版
- 第四节 爱眼宣传公益行教学设计-2025-2026学年初中物理八年级上册(2024)北师大版(2024·郭玉英)
- 涡阳水上交通知识培训课件
- 3.1物质的转化 教学设计-华东师大版九年级下册科学
- STING-agonist-44-生命科学试剂-MCE
- 施工现场准备说课稿中职专业课-主体结构工程施工-建筑类-土木建筑大类
- Silicon-29-metal-particles-sup-29-sup-Si-metal-particles-生命科学试剂-MCE
- 涉爆安全知识培训课件
- 环境因素识别与风险评价培训课件
- 2025北京大兴区旧宫镇红星派出所流动人口和出租房屋管理员招录1人考前自测高频考点模拟试题及答案详解(全优)
- 磷化工复工安全培训总结课件
- 2025年4月自考02204经济管理试题及答案
- 俱舍论原文内容
- GB/T 18742.3-2017冷热水用聚丙烯管道系统第3部分:管件
- 肺癌患者随访服务记录表
- 高三班主任经验交流课件
- 小学英语三年级上册全册课件
- 系统生物学-第三讲-转录组学课件
- 2021新教材高中历史第四单元资本主义制度的确立-教学课件-人教版历史纲要下
评论
0/150
提交评论