`
fireinjava
  • 浏览: 480544 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

java 列表转树形

    博客分类:
  • Java
 
阅读更多

往往要将数据库中的菜单配置转成树形结构展示到前台,这边提供一种二维树组转树形(同事那边看来的,很好用),以供参考:

数据库  id,name,parent_id

java对象:

private class TreeNode{
	private String id;
	private String name;
	private String parentId;
	private List<TreeNode> children;
	
	// TODO getter/setter
}

树构造代码如下:

		List<TreeNode> menuList = xxManager.findAllMenu();
		
		List<TreeNode> nodeList = new ArrayList<TreeNode>();
		for(TreeNode node1 : menuList){
			boolean mark = false;
			for(TreeNode node2 : menuList){
				if(node1.getParentId()!=null && node1.getParentId().equals(node2.getId())){
					mark = true;
					if(node2.getChildren() == null)
						node2.setChildren(new ArrayList<TreeNode>());
					node2.getChildren().add(node1); 
					break;
				}
			}
			if(!mark){
				nodeList.add(node1); 
			}
		}
		//转为json格式		
		String json = JSONArray.fromObject(nodeList).toString();
		System.out.println("json:"+json);

原理如下图了:


 

  • 大小: 6.7 KB
分享到:
评论
2 楼 学渣村的好村长 2017-06-02  
  
1 楼 wawj0819 2016-04-15  

相关推荐

    java动态树形菜单

    在Java Web开发中,动态树形菜单是一种常见的用户界面元素,尤其在管理系统的导航部分,它能够以层次结构展示数据,使用户能直观地浏览和操作复杂的数据结构。本示例是一个基于Java实现的JSP动态树形菜单功能,旨在...

    树形结构设计总结java demo

    本篇文章将深入探讨“树形结构设计”在Java环境下的实现,并结合给出的链接资源——一篇在CSDN博客上的文章(虽然无法直接访问,但我们可以根据描述推测其内容),以及名为“tms”的压缩包文件,来解析相关知识点。...

    基于JAVA建立树形结构的算法优化.pdf

    从普通Java对象中建立树形结构的过程涉及到算法设计与优化。原始数据通常是扁平化存储的,需要通过特定的算法将其转换为具有层次结构的树形数据。在教师信息系统的基本信息模块中,地址信息的管理是构建树形结构的一...

    java动态树形菜单与分页

    在Java开发中,动态树形菜单和分页是常见的需求,尤其在构建Web应用程序时,它们对于用户界面的交互性和数据管理的效率至关重要。本文将深入探讨这两个概念以及如何在Java环境中实现它们。 首先,我们来看动态树形...

    java树形菜单

    在Java编程中,树形菜单是一种常见的用户界面元素,它以层次结构展示数据,通常用于文件系统、组织架构或程序功能导航。这个压缩包“treemenu”很可能包含了一个简单的WinFrom应用程序,其中实现了树形菜单的功能。...

    java-根据过滤条件显示树形结构

    在Java编程中,构建和显示树形结构是一种常见的任务,特别是在数据表示、文件系统操作或者组织复杂的对象层次结构时。本篇文章将详细讲解如何在Java中根据过滤条件来实现这一功能,同时也会提及所需的jar包。 首先...

    Java项目中树形菜单的创建

    Java项目中树形菜单的创建

    java解析xml动态生成树形菜单结构

    总结起来,实现“java解析xml动态生成树形菜单结构”的项目,需要掌握以下核心知识点: 1. Java的DOM解析XML,构建树形数据结构。 2. 设计和实现无限层级的树形菜单数据模型。 3. 使用`JSTree`库在前端渲染树形菜单...

    JAVA实现EASYUI树形表格(TreeGrid)代码

    JAVA实现EASYUI树形表格(TreeGrid)代码,gradle项目,内含gradle文件夹和mysql数据库文件,解压后导入mysql数据库,文件夹导入eclipse即可使用。首次使用请更新gradle项目下载JAR包,不然报错。

    Java递归将List转为树形结构Java递归将List转为树形结构

    Java递归将List转为树形结构 博客地址:https://blog.csdn.net/weixin_38500202/article/details/110456363

    java树形控件实现代码

    Java树形控件,通常指的是Java Swing或JavaFX中的JTree组件,它是用户界面中用于显示数据层次结构的可视化工具。在Java编程中,树形控件被广泛应用于表示文件系统、组织结构或其他具有层级关系的数据。下面我们将...

    Ztree+treeTable实现 Java实现 树形菜单 树形表格

    在Java开发中,构建用户界面时,树形菜单和树形表格是常见且重要的组件,它们可以帮助用户以层次结构的方式浏览和操作数据。本篇将详细介绍如何利用Ztree和treeTable来实现这样的功能。 Ztree是一款基于JavaScript...

    用JAVA显示树形目录

    用JAVa实现 树形目录的显示,有界面

    Java实现树形层级结构的表格

    Java实现的,将树形层级结构的数据转换成表格,通过打点的方式向表格中插入数据,支持行头表格、列头表格、交叉表格三种形式

    Java递归算法构造JSON树形结构

    Java 递归算法构造 JSON 树形结构 Java 递归算法构造 JSON 树形结构是指通过 Java 语言使用递归算法将数据库中的菜单表构建成树形的 JSON 格式发送给第三方。这种方法可以将复杂的树形结构数据转换成易于理解和处理...

    java 实现动态改变树形结构中主节点的名称

    根据提供的文件信息,我们可以分析并总结出以下关于“Java实现动态改变树形结构中主节点的名称”的相关知识点: ### 一、理解树形结构 在计算机科学中,树形结构是一种常用的数据组织形式,它将数据组织成类似于树...

    基于JAVA的Tree树形菜单管理系统源代码

    在Java编程领域,树形菜单是一种常见的用户界面元素,它以层次结构展示数据,便于用户进行导航和操作。本项目“基于JAVA的Tree树形菜单管理系统源代码”提供了一个实现这种功能的实例,展示了如何利用Java语言来创建...

    list转树形结构工具类

    "List转树形结构工具类"是一个实用的工具,它可以帮助开发者将扁平化的数据结构(如List)转换为层次化的树形结构。这在处理组织结构、文件系统、菜单栏等场景时非常有用。下面我们将深入探讨这个工具类的工作原理、...

Global site tag (gtag.js) - Google Analytics