这里先以二级菜单说起,实现多级菜单有两个策略。

一、策略

1.给每个菜单增加一个level属性表示为几级菜单,解析时按照level的值解析等级。

2.构建树形结构,循环递归实现,不需要多增加属性。

 

二、Mybatis实现

这里是使用Mybatis实现,不需要自己处理后台数据的情况。

(1)下图为数据库表menus

Mybatis映射查询多级菜单

 

 (2)修改menu实体类

Mybatis映射查询多级菜单

 

(3)dao层接口

Mybatis映射查询多级菜单

 

(4)mapper.xml

Mybatis映射查询多级菜单

 

 Mybatis映射查询多级菜单

 

Mybatis映射查询多级菜单

 (5)结果

Mybatis映射查询多级菜单

 

三、总结

策略1实现起来方便,策略2结构更好。对于更多级的情况,策略2也不能生成最终的树形结构,只能达到第二层。三级菜单需要修改sql语句,增加第三级的列,并且在xml中增加一层collection嵌套(每一层由Id确定)。

参考:spring+mybatis 实现三级树形菜单

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-11-09
  • 2022-12-23
  • 2021-09-14
  • 2021-06-09
  • 2022-12-23
  • 2021-05-27
猜你喜欢
  • 2021-09-01
  • 2021-11-27
  • 2021-04-20
  • 2021-07-14
  • 2021-11-19
  • 2022-12-23
相关资源
相似解决方案