当前位置: 首页 > wzjs >正文

p2p理财网站开发流程图分类信息的网站如何推广

p2p理财网站开发流程图,分类信息的网站如何推广,什么是网站推广优化,张掖做网站在管理菜单、部门结构等场景时,我们经常需要将数据库中的层级数据转换为树形结构。本文将通过Hutool的TreeUtil工具类,实现零递归快速构建树形结构。 一、环境准备 JDK 1.8Spring Boot 2.xHutool 5.8.16MySQL 8.0 二、数据准备 -- 创建部门表 CREATE…

在管理菜单、部门结构等场景时,我们经常需要将数据库中的层级数据转换为树形结构。本文将通过Hutool的TreeUtil工具类,实现零递归快速构建树形结构。

一、环境准备

  • JDK 1.8+
  • Spring Boot 2.x
  • Hutool 5.8.16
  • MySQL 8.0

二、数据准备

-- 创建部门表
CREATE TABLE `sys_dept` (`id` int NOT NULL AUTO_INCREMENT,`dept_name` varchar(50) NOT NULL COMMENT '部门名称',`parent_id` int NOT NULL DEFAULT '0' COMMENT '父部门ID',`sort` int DEFAULT '0' COMMENT '排序',PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;-- 插入测试数据
INSERT INTO sys_dept (id, dept_name, parent_id, sort) VALUES
(1, '集团公司', 0, 1),
(2, '技术部', 1, 1),
(3, '开发组', 2, 1),
(4, '测试组', 2, 2),
(5, '市场部', 1, 2),
(6, '华北分部', 5, 1);

三、代码实现

1. 添加Hutool依赖

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.16</version></dependency>

2. 实体类

/*** * @TableName sys_dept*/
@Data
public class SysDept implements Serializable {/*** 主键*/private Integer id;/*** 部门名称*/private String deptName;/*** 父部门ID*/private Integer parentId;/*** 排序字段*/private Integer sort;private static final long serialVersionUID = 1L;
}

3. Mapper接口

@Mapper
public interface SysDeptMapper {List<SysDept> listAll();
}

4. Service实现


@Service
public class DeptServiceImpl implements DeptService{@Autowiredprivate SysDeptMapper sysDeptMapper;@Overridepublic List<Tree<Integer>> getDeptTree() {// 查询数据库获取原始数据List<SysDept> depts = sysDeptMapper.listAll();// 配置字段映射TreeNodeConfig treeNodeConfig = new TreeNodeConfig();treeNodeConfig.setIdKey("id");treeNodeConfig.setParentIdKey("parentId");treeNodeConfig.setWeightKey("sort"); // 排序字段treeNodeConfig.setChildrenKey("children");// 转换树形结构(根节点parentId为0)List<Tree<Integer>> resultTreeList = TreeUtil.build(depts, 0, treeNodeConfig,(treeNode, tree) -> {tree.setId(treeNode.getId());tree.setParentId(treeNode.getParentId());tree.putExtra("deptName", treeNode.getDeptName());tree.putExtra("sort", treeNode.getSort());});return resultTreeList;}
}

5. Controller

@RestController
@RequestMapping("/dept")
public class DeptController {@Autowiredprivate DeptService deptService;@RequestMapping("/tree")public List<Tree<Integer>> list(){return deptService.getDeptTree();}
}

四、结果示例

请求GET /dept/tree返回:

[{"id": 1,"parentId": 0,"deptName": "集团公司","sort": 1,"children": [{"id": 2,"parentId": 1,"deptName": "技术部","sort": 1,"children": [{"id": 3,"parentId": 2,"deptName": "开发组","sort": 1},{"id": 4,"parentId": 2,"deptName": "测试组","sort": 2}]},{"id": 5,"parentId": 1,"deptName": "市场部","sort": 2,"children": [{"id": 6,"parentId": 5,"deptName": "华北分部","sort": 1}]}]}
]

五、技术要点

1. TreeNodeConfig配置

  • setIdKey(): 指定ID字段名
  • setParentIdKey(): 指定父ID字段名
  • setChildrenKey(): 指定子节点集合字段名
  • setWeightKey(): 指定排序字段
  • putExtra():添加额外字段

参考:
https://doc.hutool.cn/pages/TreeUtil/


文章转载自:

http://1QVvKqAm.krwzy.cn
http://Yf80JMIM.krwzy.cn
http://rxH1aABl.krwzy.cn
http://kde9Urqp.krwzy.cn
http://j0sTBcfX.krwzy.cn
http://cjanlut9.krwzy.cn
http://oewMvBSI.krwzy.cn
http://9Z4Ni01z.krwzy.cn
http://hoVuA6pa.krwzy.cn
http://CXRttlCy.krwzy.cn
http://3rZwVqVC.krwzy.cn
http://KwgV6dF6.krwzy.cn
http://44mgWvFW.krwzy.cn
http://Uv2CNDxZ.krwzy.cn
http://2aVRuF7Y.krwzy.cn
http://42sFuiS0.krwzy.cn
http://C1XOaUfP.krwzy.cn
http://KT4piFXT.krwzy.cn
http://WiqmcEaj.krwzy.cn
http://RJtSWIM6.krwzy.cn
http://q5rLZSTF.krwzy.cn
http://YKPAUeDN.krwzy.cn
http://XjjRh5l9.krwzy.cn
http://7Nh9sEYM.krwzy.cn
http://54sOhzVd.krwzy.cn
http://kwZu7ZpS.krwzy.cn
http://gAG5Y5zI.krwzy.cn
http://HlFWgXaf.krwzy.cn
http://ZRJE5b0o.krwzy.cn
http://Oj5d0dXJ.krwzy.cn
http://www.dtcms.com/wzjs/631504.html

相关文章:

  • 百度网站快速收录泉州网站设计平台
  • 网站做跳转链接的好处创建网站的好处
  • 漳州本地企业网站建设服务wordpress语言的设置中文
  • 厦门的企业网站Dedecms手机网站源码
  • asp.net是做网站的吗做网站分流
  • 个人电子商务网站建设工作总结2023最新完整版
  • wordpress怎么放音乐滁州百度seo
  • 网站安全的建设目标外发加工网费用大概多少
  • 如何将公司网站做的更好看郑州友网站建设
  • 建设鲜花网站前的市场分析静态网页模板网站
  • 请概述网站建设的一般步骤灰色词排名接单
  • 山东省城乡住房和城乡建设厅网站报价单模板英文
  • 百度建网站多少钱桂林楼盘网
  • 天门市电子商务网站建设小程序网站建设制作
  • 普洱网站建设优化如何将下载好的网站模板用到织梦程序上
  • 怎么制作app网站广州冼村人很有钱吗
  • 上海发布最新消息今天seo快速排名软件推荐
  • 石景山区百科seo福州网站优化公司
  • 建网站合同昆明手机网站开发
  • 摄影网站 蜂鸟推广计划与推广单元的区别
  • 福建建设执业资格中心网站宠物美容网站建设合同书
  • 青岛建设银行官方网站做响应式网站最大宽度
  • 做教育的网站有哪些浙江网站建设价格费用
  • 黄页网站大全免费网在线大学生50个创新产品设计
  • 外贸网站源码去一品资源淮安专业做网站
  • 自己设计的网站如何推广区块链的网站怎么做
  • 永久免费的电销外呼系统seo如何推广网站
  • 网站推广员大连网站建设资讯
  • 慈利网站建设太原编程培训机构
  • 做网站可以赚钱吗?网页制作教程百度网盘