使用Java做Web树形图

开发工具与关键技术:MyEclipse 10、JAVA
作者:曾浩源
撰写时间:2019年05月27日

1、在jsp页面内使用自定义标签获取项目连接
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:set value="${pageContext.request.contextPath}" scope="page" var="ctx"></c:set>
2、调用树形插件和jQuery插件
<link href="${ctx}/plug-in/ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet"/>
<script src="${ctx}/js/jquery-2.0.3.min.js"></script>
<script src="${ctx}/plug-in/ztree/js/jquery.ztree.all.min.js"></script>
3、写html语句
<ul id="CommodityClass" class="ztree"></ul>
4、写js语句
<script type="text/javascript">
	var CommodityTreeId, CommodityClassId, CommodityTreeName;
	 $(function () {
		$.ajax({
                type: "Post",
                url: "${ctx}/servlet/CommodityServlet?type=ComClass",
                //async: false,
                success: function (data) {
                   													//字符串转json												
                    $.fn.zTree.init($("#CommodityClass"), setting, jQuery.parseJSON(data));
                }
            });
       })
       //角色树形插件的基本配置
       var setting = {
           view: {
               dblClickExpand: false,
           },
           data: {
               simpleData: {
                   enable: true,
                   idKey: "id",
               }
           },
           callback: {
               onClick: RolesOnClick
           }
       };
       function RolesOnClick(event, treeId, treeNode) {
           var zTree = $.fn.zTree.getZTreeObj("CommodityClass");
           zTree.expandNode(treeNode);
           CommodityTreeId = parseInt(treeNode.id);
          	CommodityClassId = parseInt(treeNode.pId);
           CommodityTreeName = treeNode.name;
       }
   	})
</script>
  url: "${ctx}/servlet/CommodityServlet?type=ComClass",
5、上面的链接请求到CommodityServlet里,所以在CommodityServlet.java做处理;

判断type值,为ComClass,调用ComClass()方法:

	public void ComClass(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		List<Map<String, Object>> jsonlist = new ArrayList<Map<String, Object>>();
		ICommodityClassService classService = new CommodityClassServiceImpl();
		//查询该树形表所有数据
		List<CommodityClass> classes = classService.findAll();
		for (CommodityClass commodityClass : classes) {
			Map<String, Object> map = new TreeMap<String, Object>();
			map.put("id", commodityClass.getCommodityTypeID());
			map.put("pId", commodityClass.getComTypeClass());
			map.put("name", commodityClass.getComType());
			jsonlist.add(map);
		}
		//使用jar包内JSONArray
		JSONArray jsonArray=JSONArray.fromObject(jsonlist);
		PrintWriter out = resp.getWriter();
		//转到jsp页面是字符串,所以需要在jsp进行处理转为json	
		out.write(jsonArray.toString());
		out.flush();
		out.close();
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值