Layui之树型菜单

目录

一、数据显示

二、创建“父子”关系

三、实现前端菜单功能


继上篇博客内容的代码基础上实现树型菜单功能.....

左侧菜单实现思路:

1)layui官网上的显示菜单代码(html代码)

2) 从此代码推断出具体需要怎样的数据格式,数据必须存在父子关系

3)分析工具类的底层原理方便之后使用

4)调用次工具类,将菜单平级数据转换为具备父子关系的菜单数据

5) 完成后台 构建PermissionAction 和相应配置文件

6) 前台调用PermissionAction ,然后利用ajax获取数据,最后通过ajax 构建第一步的HTML代码

一、数据显示

----实体类Permission

public class Permission {
    private long id;
    private String name;//菜单名
    private String description;    //描述
    private String url;//点击菜单跳转页面
    private long pid;//父级菜单的id
    private int ismenu;//是否是菜单
    private long displayno;//是否顺序显示
    
    public int getIsmenu() {
        return ismenu;
    }
    public void setIsmenu(int ismenu) {
        this.ismenu = ismenu;
    }
    public long getIsplayno() {
        return displayno;
    }
    public void setIsplayno(long isplayno) {
        this.displayno = isplayno;
    }
    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public String getUrl() {
        return url;
    }
    public void setUrl(String url) {
        this.url = url;
    }

    

public long getPid() {
        return pid;
    }
    public void setPid(long pid) {
        this.pid = pid;
    }
    
    
    public Permission(long id, String name, String description, String url, long pid, int ismenu, long isplayno) {
            this.id = id;
            this.name = name;
            this.description = description;
            this.url = url;
            this.pid = pid;
            this.ismenu = ismenu;
            this.displayno = isplayno;
        }
public Permission() {
    // TODO Auto-generated constructor stub
}
@Override
public String toString() {
    return "Permission [id=" + id + ", name=" + name + ", description=" + description + ", url=" + url + ", pid="
            + pid + ", ismenu=" + ismenu + ", isplayno=" + displayno + "]";
}


}
 

 dao方法


import java.util.ArrayList;
import java.util.List;

import com.zking.entity.Permission;
import com.zking.util.BaseDao;
import com.zking.util.BuildTree;
import com.zking.util.PageBean;
import com.zking.util.TreeVo;

public class PerissonDao extends  BaseDao<Permission>{
    //查询t_oa_permission 表的数据
    
    public List<Permission> list(Permission permission, PageBean pageBean) throws Exception {
        String sql="select * from  t_oa_permission";
        
        return super.executeQuery(sql,Permission.class, pageBean);
    }
  
    
}


 遍历所有数据

import static org.junit.Assert.*;

import java.util.List;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.zking.entity.Permission;
import com.zking.util.TreeVo;

public class MenuDaoTest {
private PerissonDao menuDao =new PerissonDao();
    @Before
    public void setUp() throws Exception {
    }

    @After
    public void tearDown() throws Exception {
    }

    @Test
    public void testList() {
         try {//无需传参
            List<Permission> list= menuDao.list(null, null);
//        for (Permission permission : list) {
//            System.out.println(permission);
//        }
        ObjectMapper om=new ObjectMapper();
        System.out.println(om.writeValueAsString(list));//json数组
         } catch (Exception e) {
            e.printStackTrace();
        }
        
    
    }
  

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值