mysql mybatis 递归查询语句_mybatis+mysql递归查询

建表:

CREATE TABLE `sys_menu` (

`id` bigint(20) NOT NULL AUTO_INCREMENT,

`pid` bigint(20) DEFAULT NULL COMMENT '父菜单ID,一级菜单为0',

`name` varchar(50) DEFAULT NULL COMMENT '菜单名称',

`url` varchar(200) DEFAULT NULL COMMENT '菜单URL',

`perms` varchar(500) DEFAULT NULL COMMENT '授权(多个用逗号分隔,如:user:list,user:create)',

`type` int(11) DEFAULT NULL COMMENT '类型 0:目录 1:菜单 2:按钮',

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

`order_num` int(11) DEFAULT NULL COMMENT '排序',

`create_time` datetime DEFAULT NULL COMMENT '创建时间',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=66 DEFAULT CHARSET=utf8 COMMENT='菜单管理'

建JavaBean:

/**

* Project Name:meatball-admin

* File Name:MenuController.java

* Package Name:com.meatball.system.menu.controller

* Date:2018年1月1日下午5:04:03

* Copyright (c) 2018, zhang.xiangyu@foxmail.com All Rights Reserved.

*/

package com.meatball.system.menu.model;

import java.io.Serializable;

import java.util.Date;

import java.util.List;

/**

* @Title: SysMenu.java

* @Package com.meatball.system.menu.model

* @Description: TODO(菜单)

* @author 暴雪首席执行官

* @date 2018年1月2日 下午10:33:42

* @version V1.0

*/

public class SysMenu implements Serializable {

private static final long serialVersionUID = 1L;

// 主键

private Long id;

// 父ID

private Long pid;

// 名称

private String name;

// 链接地址

private String url;

// 授权(多个用逗号分隔,如:user:list,user:create)

private String perms;

// 类型 0:目录 1:菜单 2:按钮

private Integer type;

// 菜单图标

private String icon;

// 排序

private Integer orderNum;

// 创建时间

private Date createTime;

private List children;

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public Long getPid() {

return pid;

}

public void setPid(Long pid) {

this.pid = pid;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}

public String getPerms() {

return perms;

}

public void setPerms(String perms) {

this.perms = perms;

}

public Integer getType() {

return type;

}

public void setType(Integer type) {

this.type = type;

}

public String getIcon() {

return icon;

}

public void setIcon(String icon) {

this.icon = icon;

}

public Integer getOrderNum() {

return orderNum;

}

public void setOrderNum(Integer orderNum) {

this.orderNum = orderNum;

}

public Date getCreateTime() {

return createTime;

}

public void setCreateTime(Date createTime) {

this.createTime = createTime;

}

public List getChildren() {

return children;

}

public void setChildren(List children) {

this.children = children;

}

}

mybatis+mysql实现递归查询:

select

from sys_menu

pid = 0;

select

from sys_menu

pid = #{pid,jdbcType=BIGINT}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值