溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

spring+srpingmvc+hibernate實(shí)現(xiàn)動(dòng)態(tài)ztree生成樹狀圖效果

發(fā)布時(shí)間:2020-09-16 16:38:19 來源:腳本之家 閱讀:184 作者:No baldness 欄目:編程語言

ztree生成樹狀圖

ztree官網(wǎng)

前臺

導(dǎo)入js和css包

下載地址

前端頁面 ztree.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" isELIgnored="false" %>
<!DOCTYPE html>
<HTML>
<HEAD>
	<TITLE>ztree</TITLE>
	<meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<link rel="stylesheet" href="${pageContext.request.contextPath}/Css/demo.css" type="text/css">
	<link rel="stylesheet" href="${pageContext.request.contextPath}/Css/zTreeStyle/zTreeStyle.css" type="text/css">
	<script type="text/javascript" src="${pageContext.request.contextPath}/Js/jquery-1.4.4.min.js"></script>
	<script type="text/javascript" src="${pageContext.request.contextPath}/Js/jquery.ztree.core-3.5.js"></script>

	<SCRIPT type="text/javascript">
	
		//初始化
		var setting = {
			data: {
				simpleData: {
					enable: true
				}
			},
			callback: {
				beforeClick: beforeClick
			}
		};

		//數(shù)據(jù)集
		var zNodes =[

			//根據(jù)這種格式生成樹狀圖
			// {id:1, pId:0, name:"河北省"},
			// {id:12, pId:1, name:"石家莊"},
			// {id:13, pId:1, name:"邢臺"},
			// {id:14, pId:1, name:"邯鄲"},
			// {id:2, pId:0, name:"北京市"},
			// {id:22, pId:2, name:"海淀區(qū)"},
			// {id:23, pId:2, name:"朝陽區(qū)"},
			// {id:24, pId:2, name:"長安區(qū)"}

		];
		
		
		//點(diǎn)擊后的操作
		function beforeClick(treeId, treeNode, clickFlag) {


			//獲取父窗口中id為Text1
	  var parentControl=parent.document.getElementById("Text1");
			//把值設(shè)置為treeNode.name;
	  parentControl.value=treeNode.name;

		}
		


		//訪問控制層,獲取數(shù)據(jù)。
		$(document).ready(function(){
			var url="${pageContext.request.contextPath}/menu/findZtree";
			$.getJSON(url,{},function(nodes){
				//alert(nodes);
				console.log(JSON.stringify(nodes));
				zNodes=nodes;
				$.fn.zTree.init($("#treeDemo"), setting, zNodes);
		})

	});


	</SCRIPT>
 </HEAD>

<BODY>
<div class="content_wrap">
	<div class="zTreeDemoBackground left">
		<ul id="treeDemo" class="ztree"></ul>
	</div>
</div>
</BODY>
</HTML>

后臺

ztree所需實(shí)體類

package com.shp.dev.common;
public class Ztree {
 private String id;
 private String pId;
 private String name;
 public String getId() {
 return id;
 }
 public void setId(String id) {
 this.id = id;
 }
 public String getpId() {
 return pId;
 }
 public void setpId(String pId) {
 this.pId = pId;
 }
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
 public Ztree() {
 }
 public Ztree(String id, String pId, String name) {
 this.id = id;
 this.pId = pId;
 this.name = name;
 }
 @Override
 public String toString() {
 return "Ztree{" +
  "id='" + id + '\'' +
  ", pId='" + pId + '\'' +
  ", name='" + name + '\'' +
  '}';
 }
}

dao接口

package com.shp.dev.menu.dao;
import com.shp.dev.menu.pojo.Menu;
import java.util.List;
public interface MenuDao {
 List<Menu> queryAll();
}

dao的實(shí)現(xiàn)類

package com.shp.dev.menu.dao;
import com.shp.dev.menu.pojo.Menu;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository("menuDao")
public class MenuDaoImpl implements MenuDao{
 @Autowired
 private SessionFactory sessionFactory;
 @Override
 public List<Menu> queryAll() {
 return sessionFactory.getCurrentSession().createQuery("from Menu").list();
 }
}

業(yè)務(wù)接口

package com.shp.dev.menu.service;
import com.shp.dev.menu.pojo.Menu;
import java.util.List;
public interface MenuService {
 List<Menu> queryAll();
}

業(yè)務(wù)實(shí)現(xiàn)層

package com.shp.dev.menu.service;
import com.shp.dev.menu.dao.MenuDao;
import com.shp.dev.menu.pojo.Menu;
import com.shp.dev.role.dao.RoleDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service("menuService")
public class MenuServiceImpl implements MenuService{
 //@Transactional(readOnly = true)//只讀事務(wù)
 // @Transactional(rollbackFor = Exception.class)//啟動(dòng)事務(wù),所有異常都回滾
 @Autowired
 private MenuDao menuDao;
 @Override
 @Transactional(readOnly = true)//只讀事務(wù)
 public List<Menu> queryAll() {
 return menuDao.queryAll();
 }
}

控制層

package com.shp.dev.menu.web;
import com.shp.dev.common.Ztree;
import com.shp.dev.menu.pojo.Menu;
import com.shp.dev.menu.service.MenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.ArrayList;
import java.util.List;
@Controller
@RequestMapping("/menu")
public class MenuController {
 @Autowired
 private MenuService menuService;
 @RequestMapping("/findZtree")
 @ResponseBody // 返回json對象
 public List<Ztree> findZtree(){
 List<Ztree> menus=new ArrayList<Ztree>();
 List<Menu> query = menuService.queryAll();
 for (Menu m : query) {
  menus.add(new Ztree(m.getId(),m.getParent_id(),m.getName()));
 }
 return menus;
 }
}

總結(jié)

以上所述是小編給大家介紹的spring+srpingmvc+hibernate實(shí)現(xiàn)動(dòng)態(tài)ztree生成樹狀圖,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI