Java中的无限层级递归树前后端操作解决方案
引言:
抖音真是一个神奇的软件,前两天脑海中浮现了一首歌,知道歌曲的调调,今天打算写博客之前刷了一下抖音,抖音的推荐算法居然给我推送了这首歌,这首歌叫做《一开始说陪你到老的人现在他还好吗》。接下来我会带着耳机把这篇文章写完,干货特别多,适用于所有系统直接可以复制粘贴使用。我一直坚信,经验是由一点一点积累的,思维也是由一天一天训练出来的。
1为什么写前后端递归树操作解决方案
从开始到现在,虽然java后台中,前台Html以及前端管理系统或多或少都用到过树形数据的数据结构,每次开发过程中还是不能快速进行开发,开发效率极低,所以写这篇java中的递归以及数据库无限层级树状数据结构的设计方案,方便以后在遇到这种开发功能,直接复制粘贴代码搞定,无论遇到任何业务系统看完这篇文章再也不用担心工作中遇到的无限层级树问题了。
2前端Vue无限层级树实现技术大纲
看文章之前,还是老样子,请先看下面这张技术大纲图,大概了解这里面涉及到的技术与流程,坚持按照大纲开完文章你的思路会更清晰。
3java无限递归层级树方案
3.1前端案例展示
大家应该逛过京东淘宝电商网站,包括我自己的购物网站如下图,这种手机、数码、电脑这种分类类目,在后台是有一个管理页面在管理这种层级树的数据。
本次以下面的案例图进行分析解答:
前端页面树状图一级未展开如图1
前端页面树状图展开一级如图2
前端页面树状图展开二级如图3
以此类推前端可以累计至无限级,那么对应后台数据库数据应该如何设计,后台到底如何设计呢?前端数据结构又是怎么样的呢?
3.2前端数据结构
3.3mysql数据库设计
最主要是Pid和shop_id字段设计,Pid为层级树形父节点的值,shop_id为业务数据Id。如下图
我们为这个表起一个闪亮的名字就叫做tb_tree_demo吧。
3.4后端树状接口业务领域模型DTO定义
定义一个业务领域模型javaBean名称为CommonDemoTree.java文件
3.5java后台业务Service逻辑代码
1.第一步根据系统业务进行查询tb_tree_demo表数据获取一个List<CommonDemoTree>数据的所有分类集合
2.进行递归算法筛选设置分类的下级类目数据设置
核心代码如下:
4有意义的一句话
技术不值钱,值钱的是思考问题的方式,上级分配给你开发任务,你不需要全部都会,你只需要学会分析问题,给出解决方案,其他的交给时间。任何技术天天学都不难,要是天天换技术学习就非常非常难。