免费预览已结束,剩余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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026滨化集团校园招聘备考题库附答案详解(a卷)
- 2026北京天玛智控科技股份有限公司全球校园招聘备考题库有答案详解
- 2025新疆禹兴水利工程有限公司(墨玉县喀河水利投资有限公司子公司)招聘2人备考题库附答案详解(培优a卷)
- 贵州企业招聘:2025贵州贵富建筑工程有限公司招聘备考题库含答案详解(研优卷)
- 可穿戴设备健康数据精准采集与实时监测技术方案
- 2025年绥德县教师招聘参考题库及答案解析
- 2025年平顶山市湛河区教师招聘参考题库及答案解析
- 2025年唐山市教师招聘考试参考题库及答案解析
- 2025年呼和浩特土默特左旗市教师招聘考试参考题库及答案解析
- 2025年文县教师招聘笔试参考试题及答案解析
- (完整版)完整三角函数公式表
- 幼儿阿拉伯数字描红(0-100)打印版
- 植物学第五章第一二节蕨类课件
- 2023版思想道德与法治课件专题7第1讲社会主义法律的特征和运行PPT
- 美容皮肤科学智慧树知到答案章节测试2023年西安海棠职业学院
- RB/T 120-2015能源管理体系食品企业认证要求
- 1-《祖国祖国我们爱你》课件音乐
- DB11-T1834-2021 城市道路工程施工技术规程高清最新版
- 《导电材料》课件
- 小学道德与法治一年级集体备课记录表(一年级)
- 四年级数学教师家长会课件
评论
0/150
提交评论