java递归mysql生成树_java从数据库读取菜单,递归生成菜单树

该博客介绍了如何使用Java从MySQL数据库读取菜单数据,然后递归地生成树形结构。文章首先定义了菜单类,接着展示了数据库的创建和初始化,接着提供了递归方法来获取子菜单,最后通过MyBatis查询菜单数据并展示结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先看一下菜单的样子

2caa42f2dd995d96f98cdce9ce6de71c.png

根据这个样子我们定义菜单类

public class Menu {

// 菜单id

private String id;

// 菜单名称

private String name;

// 父菜单id

private String parentId;

// 菜单url

private String url;

// 菜单图标

private String icon;

// 菜单顺序

private int order;

// 子菜单

private List

// ... 省去getter和setter方法以及toString方法

}

我们根据这个类定义数据库,并插入菜单数据

DROP TABLE IF EXISTS `jrbac_menu`;

CREATE TABLE `jrbac_menu` (

`id` varchar(32) NOT NULL COMMENT '主键id,uuid32位',

`name` varchar(64) NOT NULL COMMENT '登录用户名',

`parent_id` varchar(32) DEFAULT NULL COMMENT '父菜单id',

`url` varchar(64) DEFAULT NULL COMMENT '访问地址',

`icon` varchar(32) DEFAULT NULL COMMENT '菜单图标',

`order` tinyint(4) DEFAULT '0' COMMENT '菜单顺序',

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='菜单表';

-- ----------------------------

-- Records of jrbac_menu

-- ----------------------------

INSERT INTO `jrbac_menu` VALUES ('1', 'Forms', null, 'forms.html', 'fa fa-edit', '0');

INSERT INTO `jrbac_menu` VALUES ('2',

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值