一、 权限树的问题由来
- 在开发中难免遇到一个有多级菜单结构树,或者多级部门的结构树,亦或是省市区县的多级结构,数据结构类似如下的json数据:
[
{
"id": "1",
"name": "主菜单1",
"pid": "0",
"menuChildren": [
{
"id": "4",
"name": "子菜单1.1",
"pid": "1",
"menuChildren": [
{
"id": "6",
"name": "子菜单1.1.1",
"pid": "4",
"menuChildren": []
},
{
"id": "9",
"name": "子菜单1.1.2",
"pid": "4",
"menuChildren": []
}
]
},
{
"id": "5",
"name": "子菜单1.2",
"pid": "1",
"menuChildren": []
}
]
},
{
"id": "2",
"name": "主菜单2",
"pid": "0",
"menuChildren": [
{
"id": "7",
"name": "子菜单2.1",
"pid": "2",
"menuChildren": []
},
{
"id": "8",
"name": "子菜单2.2",

本文探讨了在开发中如何处理多级菜单结构的问题,提出了两种解决方案:后端返回所有数据由前端构建树,或者后端直接构建树状结构。鉴于数据库查询开销和前端能力限制,作者选择了后端通过递归在Java中构建树状结构的方法,并详细介绍了实现步骤,包括数据库准备、实体类、DAO层、Mapper和Controller层的代码示例。
最低0.47元/天 解锁文章
1258





