Easyui后台实现

本文介绍了如何在后台使用Easyui实现数据转换,包括对象与数组的转换,并详细阐述了树形组件的数据结构生成步骤,从导入jar包、创建实体类到设置响应数据,最终展示运行结果。
摘要由CSDN通过智能技术生成

思维导图:

 一.转换对应的数据式

1.转换成对象

方式一:实体类对象转换成json串->json对象

public class Menu {
	private String serialNo;
	private String menuid;
	private String menuname;
	private String menuURL;
	private String parentid;
}

  json串->json对象

package com.pjl.demo;

import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonDemo1 {

	public static void main(String[] args) throws Exception {
		//如何造出数据 1,new一个JsonObject1对象 2,导入jar包
     JsonObject1 obj1=new JsonObject1("11", "学生管理", "closed");
		ObjectMapper om=new ObjectMapper();
System.out.println(om.writeValueAsString(obj1));
}

方式二:Map集合转换成json串->json对象

Map<String, Object> map=new HashMap<String, Object>();
			map.put("id","11");
			map.put("text","学生管理");
			map.put("state", "closed");
			System.out.println(om.writeValueAsString(map));

测试结果: 

2.转换成数组

方式一:实体类集合对象转换成json串->json数组

package com.pjl.demo;

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

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonDemo2 {
	
	// 方式一:获取json数组 实体类对象转换成json ——> json数组
	public static void main(String[] args) throws Exception {
		JsonObject1 obj1 = new JsonObject1("14", "about.html", "null");
		JsonObject1 obj2 = new JsonObject1("15", "welcome.html", "null");
		List<JsonObject1> list = new ArrayList<>();
		list.add(obj1);
		list.add(obj2);
		ObjectMapper om = new ObjectMapper();
		System.out.println(om.writeValueAsString(list));
}

方式二:Map集合对象转换成json串->json数组

// 方式二:map集合转换成json数组
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("id", "14");
		map.put("text", "about.html");
		map.put("state", null);
		Map<String, Object> map2 = new HashMap<String, Object>();
		map2.put("id", "15");
		map2.put("text", "welcome.html");
		map2.put("state", null);
		List<Map<String, Object>> listMap = new ArrayList<>();
		listMap.add(map);
		listMap.add(map2);
		System.out.println(om.writeValueAsString(listMap));
	}

测试结果:

 

 二.树形组件数据结构的生成

第一步:导jar包

 第二步:创建实体类

package com.zking.entity;

public class Menu {
	private String serialNo;
	private String menuid;
	private String menuname;
	private String menuURL;
	private String parentid;
	public String getSerialNo() {
		return serialNo;
	}
	public void setSerialNo(String serialNo) {
		this.serialNo = serialNo;
	}
	public String getMenuid() {
		return menuid;
	}
	public void setMenuid(String menuid) {
		this.menuid = menuid;
	}
	public String getMenuname() {
		return menuname;
	}
	public void setMenuname(String menuname) {
		this.menuname = menuname;
	}
	public String getMenuURL() {
		return menuURL;
	}
	public void setMenuURL(String menuURL) {
		this.menuURL = menuURL;
	}
	public String getParentid() {
		return parentid;
	}
	public void setParentid(String parentid) {
		this.parentid = parentid;
	}
	@Override
	public String toString() {
		return "Menu [serialNo=" + serialNo + ", menuid=" + menuid + ", menuname=" + menuname + ", menuURL=" + menuURL
				+ ", parentid=" + parentid + "]";
	}
	public Menu(String serialNo, String menuid, String menuname, String menuURL, String parentid) {
		super();
		this.serialNo = serialNo;
		this.menuid = menuid;
		this.menuname = menuname;
		this.menuURL = menuURL;
		this.parentid = parentid;
	}
	public Menu() {
		super();
		// TODO Auto-generated constructor stub
	}

}

第三步:dao包(MenuDao)继承BaseDao

package com.zking.dao;
 
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
import com.fasterxml.jackson.databind.ObjectMapper;
import com.zking.util.BaseDao;
import com.zking.util.BuildTree;
import com.zking.util.PageBean;
import com.zking.util.TreeVo;
import com.zking.entity.Menu;
 
public class MenuDao extends BaseDao<Menu> {
	
	public List<Menu> list(Menu menu, PageBean pageBean) throws Exception {
		
		return super.executeQuery("select * from t_easyui_menu", Menu.class, pageBean);
	}
	
	public List<TreeVo<Menu>> tree(Menu menu, PageBean pageBean) throws Exception{
		//拿到平级数据,没有父子层关系的数据
		List<Menu> list = this.list(menu, pageBean);
		//将List<Menu>转成list<TreeVo<Menu>>对象
		List<TreeVo<Menu>> listVos=new ArrayList<TreeVo<Menu>>();
		for (Menu m : list) {
			TreeVo<Menu> vo=new TreeVo<>();
			vo.setId(m.getMenuid());
			vo.setText(m.getMenuname());
			vo.setParentId(m.getParentid());
			
			Map<String, Object> attributes=new HashMap<String, Object>();
			 //self是个键名 随便取名字
			attributes.put("self", m);
			vo.setAttributes(attributes);
			listVos.add(vo);
		}
		//构建父子层关系,希望拿到菜单管理下的所有子节点数据
 
		return BuildTree.buildList(listVos, "000");
	}	
	
	public static void main(String[] args) throws Exception {
		MenuDao menuDao=new MenuDao();
		//List<Menu> list=menuDao.list(null, null);
		List<TreeVo<Menu>> tree = menuDao.tree(null, null);
		ObjectMapper om=new ObjectMapper();
		
		//System.out.println(om.writeValueAsString(list));
		System.out.println(om.writeValueAsString(tree));
	}
 
}

第四步:TreeVo

package com.zking.util;

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


public class TreeVo<T> {
	/**
	 * 节点ID
	 */
	private String id;
	/**
	 * 显示节点文本
	 */
	private String text;
	/**
	 * 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值