easyUI动态tree组件实现思路之后台获取json格式数据

本文介绍了如何使用easyUI创建动态tree组件,并详细讲解了后台Java代码如何从MySQL数据库获取数据并转换为JSON格式。通过建立数据结构,利用工具类和实体类,将数据库中的层级关系映射成tree组件所需的JSON数据。
摘要由CSDN通过智能技术生成

easyUI中将MySQL中的数据转入tree组件实现思路

前言

之前我已经做好了一个布局,今天我们学习一下关于tree组件的后台代码实现,下一篇博客实现效果!

tree组件简介

在这里插入图片描述
tree其实就是像上面图片的一个组件,就像一个父类中包含着许多子类,子类中还能包含着孙子类这样子,至于为什么叫tree……
在这里插入图片描述
可能是这个特性像极了树的分支吧!

后台代码获取数据

需要的工具类
在这里插入图片描述
需要的jar包:
在这里插入图片描述

我们需要将以下数据转换成json格式:
因为tree组件需要json格式的数据!
在这里插入图片描述
然后我们就思考,它是怎么转换成json格式的?

首先我们看tree的格式,其实我们可以将他看成一个对象,只不过其中还包含着他的后代,我们再分析这张表:

在这里插入图片描述

json格式的特点?
有混合数组、对象数组
在这里插入图片描述
因为数据库的关系我们分析过啦,可以尝试将数据库中的数据以代码转换成一个大的混合数组哦!

我们就可以开始写代码了!

package dao;

import entity.Permission;
import entity.TreeVo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.fasterxml.jackson.databind.ObjectMapper;

import dao.BaseDao;
import util.PageBean;
import vo.BuildTree;

public class PermissionDao extends BaseDao<Permission>{
   

	public List<Permission> list(Permission p,PageBean pageBean) throws Exception{
   
		String sql="select * from t_easyui_permission ";
		return super.executeQuery(sql, Permission.class, pageBean);
	}
	
	public static void main(String[] args) throws Exception {
   
		
		PermissionDao pd=new PermissionDao();
		//获取数据库的数据
		List<Permission> list = pd.list(null, null);
		
		//通过工具类完成指定格式的输出
		List<TreeVo<Permission>> nodes=new ArrayList<TreeVo<Permission>>();
		//Permission的格式是不满足easyUI组件的展现的数据格式的
		//目的:将List<Permission>转换成List<TreeVo<T>>
		//实现:将List<Permission>得到的单个Permission转换成TreeVo,将TreeVo加入到nodes
		TreeVo treevo=null;
		
		for (Permission permission : list) {
   
			//System.out.println(permission);
			treevo=new TreeVo<>();
			treevo.setId(permission.getId()+"");
			treevo.setText(permission.getName());
			treevo.setParentId(permission.getPid()+"");
//			Map<String, Object> attributes=new HashMap<String, Object>();
//			attributes.put("self", permission);
	//		treevo.setAttributes(attributes);
			nodes.add(treevo);
		}
		
		TreeVo<Permission> parent=BuildTree.build(nodes);
		ObjectMapper om=new ObjectMapper(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值