java递归生成树结构_java递归生成树形菜单
public List<Tree> getAllCommType(){ List<Tree> treeList=new ArrayList<Tree>(); //取到父节点id为0,只有一个 List<Commodity_type> typeList=commType.getAllCommodityType(); for(Commodity_type type :typeList){ Tree tree=new Tree(); tree.setId(type.getType_id()+””); tree.setPid(type.getParent_id()); tree.setText(type.getName()); List<Commodity_type> childList=commType.listChildren(type); if(childList.size()>0){ tree.setState(“close”); tree.setChildren(getAllTreeList(childList)); } treeList.add(tree); } return treeList; }
commType.getAllCommodityType()的查询语句如下:
select * from commodity_type where parent_id=0
commType.listChildren(type)的查询语句如下:
select * from commodity_type where parent_id=#{type_id}
/** * 加载子树(递归加载子子…树) * @param subTreeList * @return */ public List<Tree> getAllTreeList(List<Commodity_type> subTreeList) { List<Tree> treeList = new ArrayList<Tree>(); for(Commodity_type type : subTreeList) { Tree tree = new Tree(); tree.setId(type.getType_id()+””); tree.setPid(type.getParent_id()); tree.setText(type.getName()); List<Commodity_type> _subTreeList= commType.listChildren(type); if (_subTreeList.size() > 0) { tree.setState(“closed”); tree.setChildren(getAllTreeList(_subTreeList)); } treeList.add(tree); } return treeList; }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/192358.html原文链接:https://javaforall.cn
相关文章
- java calendar 设置小时_Java Calendar.set 方法设置时间的问题
- java数组排序去重_JAVA数组去重排序
- java启动器_JAVA基础:Java 启动器如何查找类
- java applet介绍,Java Applet教程介绍[通俗易懂]
- Java递归写法_java递归调用
- java 怎么更新session值_java – 如何更新session.setAttribute(name,value)值,其中名称相同?…「建议收藏」
- JAVA生成uuid_java接口default方法
- 大数据必学Java基础(八十四):注解的案例介绍
- java使用xquery_如何使用Java XQuery
- java如何打印菱形_java实现空心菱形
- java prototype是什么,Java设计模式之原型模式(Prototype模式)介绍
- 使用Java中Collections工具类和Comparator比较器使用
- Java递归遍历文件夹详解编程语言
- Java通过递归进行二叉树遍历详解编程语言
- TIOBE 5月编程语言排行榜:Java和C语言正在被超越详解编程语言
- 处理超时处理:使用Redis与Java实现超时操作(redisjava过期)
- Redis Java实现键值自动过期(redisjava过期)
- Java编程实现MySQL表备份(java备份mysql表)
- Java应用在Linux上乱码的原因及解决方法(java linux乱码)
- Java搭配MySQL,实现创新跳跃的可能(java 与mysql)
- Linux下快速配置Java环境变量(linux设置java环境变量)