See: Description
Interface | Description |
---|---|
Node<T> |
节点接口,提供节点相关的的方法定义
|
Class | Description |
---|---|
BeanTree<T,R extends Comparable<R>> |
本类是用于构建树的工具类,特点是采取lambda,以及满足指定类型的Bean进行树操作
Bean需要满足三个属性:
包含不为null的主键(例如id)
包含容许为null的关联外键(例如parentId)
包含自身的子集,例如类型为List的children
本类的构建方法是通过
BeanTree.of 进行构建,例如:
final BeanTree beanTree = BeanTree.of(JavaBean::getId, JavaBean::getParentId, null, JavaBean::getChildren, JavaBean::setChildren);
得到的BeanTree实例可以调用toTree方法,将集合转换为树,例如:
final List<JavaBean> javaBeanTree = beanTree.toTree(originJavaBeanList);
也可以将已有的树转换为集合,例如:
final List<JavaBean> javaBeanList = beanTree.flat(originJavaBeanTree);
最后,引用一句电影经典台词: 无处安放的双手,以及无处安放的灵魂。 |
HierarchyIterator<T> | |
LambdaTreeNodeConfig<T,R> |
树配置属性相关(使用Lambda语法)
避免对字段名称硬编码
|
MapTree<T> |
通过转换器将你的实体转化为TreeNodeMap节点实体 属性都存在此处,属性有序,可支持排序
|
TreeBuilder<E> |
树构建器
|
TreeNode<T> |
树节点 每个属性都可以在
TreeNodeConfig 中被重命名在你的项目里它可以是部门实体、地区实体等任意类树节点实体 类树节点实体: 包含key,父Key.不限于这些属性的可以构造成一颗树的实体对象 |
TreeNodeConfig |
树配置属性相关
|
TreeUtil |
树工具类
|
1、每个字段可自定义
2、支持排序 树深度配置,自定义转换器等
3、支持额外属性扩展
4、贴心 许多属性,特性都有默认值处理
5、使用简单 可一行代码生成树
6、代码简洁轻量无额外依赖
Copyright © 2025. All rights reserved.