*@return*@param<T>*/publicstatic<T> List<T> buildTreeByMap(List<T>list,String idName,String parentIdName,String childrenName,String topParentIdVal) {if(CollectionUtils.isEmpty(list)) {returnCollections.emptyList(); }//根据parentId进行分组Map<String, List<T>> mapList = list.stream().col...
*@return树形结构数据 */publicstaticList<Map<String,Object>>convertToTree(List<Map<String,Object>>list,StringidFieldName,StringparentIdFieldName,StringchildrenFieldName){// 构建节点映射,方便根据id查找节点Map<Object,Map<String,Object>>nodeMap=newHashMap<>();for(Map<String,Object>node:list){Object...
List<Field> parentIdPropertyField = Arrays.stream(declaredFields).filter(x -> { TreeParentId annotation = x.getAnnotation(TreeParentId.class); return annotation != null; }).collect(Collectors.toList()); if (parentIdPropertyField.size() <= 0) { throw new RuntimeException("缺失@ParentId注解"...
List<Template> templateList=templateMapper.selectList(null); List<Template> ret= TreeUtils.generateTrees(templateList);
然后需要转换为树的实体变多,代码就会冗余,因此写一个工具类,提供对应的方法将常见的List转换为Tree。 二、实现 1.效果 UI框架:layui(官方文档:https://www.layui.com/doc/) 在使用layui的过程中发现,目前layui的组件功能并没有很强大,比如树组件就不能实现“只选单个”,但是layui简单易用,源码也不复杂,...
ToTree(list, treeNodeDTO.getId())) .collect(Collectors.toList()); } /** * 树节点对象 */ @Data public static class TreeNodeDTO { /** * ID */ private Long id; /** * 父级ID */ private Long parentId; /** * 子节点列表*/ private List<? extends TreeNodeDTO> childrenList; } ...
public class TreeUtil { /** *将 List 转为树形结构 * * @param origList : 要转换的 List * @param idFieldName : id字段名 * @param parentIdFieldName : parentId 字段名 * @param childrenFieldName : children 字段名 * @param: 拥有父子结构的 Entity ...
* list 转 tree * @param pId 父级id,list 数据中最顶级的父级id。 * @param list list * @return */publicstaticList<MenuTreeVO>listToTree(Long pId,List<Menu>list){List<MenuTreeVO>ret=newArrayList<>();if(null==list){returnret;}Iterator<Menu>iterable=list.iterator();while(iterable.hasNext...
java 将查询出来的list 转为tree结构的工具类 代码语言:javascript publicclassConvertUtils{publicstaticList<DateSourceType>departmentTransferVO2(List<DateSourceType>list){if(ObjectUtils.isEmpty(list)){returnnull;}Map<String,DateSourceType>map=list.stream().collect(Collectors.toMap(DateSourceType::getId,v->...