- package com.dao;
- public class Nodes {
- private int id;
- private String nodeId;
- private String parentId;
- private String hrefAddress;
- private String nodeName;
- public int getId() {
- return id;
- }
- public void setId(int id) {
- this.id = id;
- }
- public String getNodeId() {
- return nodeId;
- }
- public void setNodeId(String nodeId) {
- this.nodeId = nodeId;
- }
- public String getParentId() {
- return parentId;
- }
- public void setParentId(String parentId) {
- this.parentId = parentId;
- }
- public String getHrefAddress() {
- return hrefAddress;
- }
- public void setHrefAddress(String hrefAddress) {
- this.hrefAddress = hrefAddress;
- }
- public String getNodeName() {
- return nodeName;
- }
- public void setNodeName(String nodeName) {
- this.nodeName = nodeName;
- }
- }
package com.dao;
public class Nodes {
private int id;
private String nodeId;
private String parentId;
private String hrefAddress;
private String nodeName;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNodeId() {
return nodeId;
}
public void setNodeId(String nodeId) {
this.nodeId = nodeId;
}
public String getParentId() {
return parentId;
}
public void setParentId(String parentId) {
this.parentId = parentId;
}
public String getHrefAddress() {
return hrefAddress;
}
public void setHrefAddress(String hrefAddress) {
this.hrefAddress = hrefAddress;
}
public String getNodeName() {
return nodeName;
}
public void setNodeName(String nodeName) {
this.nodeName = nodeName;
}
}
4.创建一个Serlvet 来生成xml文件.
注意: response.setContentType("text/xml;charset=utf-8");
- package com.handler;
- import java.io.IOException;
- import java.io.PrintWriter;
- import java.util.ArrayList;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import com.dao.DaoTest;
- import com.dao.Nodes;
- public class NodesPrint extends HttpServlet {
- private static final long serialVersionUID = 1L;
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- doPost(request, response);
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- request.setCharacterEncoding("utf-8");
- response.setContentType("text/xml;charset=utf-8");
- PrintWriter out = response.getWriter();
- DaoTest test = new DaoTest();
- ArrayList<Nodes> list= test.getNodeInfo();
- if(list!=null&&list.size()>0){
- out.println("<?xml version=/"1.0/" encoding=/"UTF-8/"?>");
- out.println("<nodes>");
- for(int i=0;i<list.size();i++){
- Nodes node = list.get(i);
- out.println("<node nodeId='"+node.getNodeId()+"' parentId='"+node.getParentId()+"' hrefAddress='"+node.getHrefAddress()+"'>"+node.getNodeName()+"</node>");
- }
- out.println("</nodes>");
- }
- }
- }
package com.handler;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.dao.DaoTest;
import com.dao.Nodes;
public class NodesPrint extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/xml;charset=utf-8");
PrintWriter out = response.getWriter();
DaoTest test = new DaoTest();
ArrayList<Nodes> list= test.getNodeInfo();
if(list!=null&&list.size()>0){
out.println("<?xml version=/"1.0/" encoding=/"UTF-8/"?>");
out.println("<nodes>");
for(int i=0;i<list.size();i++){
Nodes node = list.get(i);
out.println("<node nodeId='"+node.getNodeId()+"' parentId='"+node.getParentId()+"' hrefAddress='"+node.getHrefAddress()+"'>"+node.getNodeName()+"</node>");
}
out.println("</nodes>");
}
}
}
5. 将dtree.js 和dtree.css,jquery.js, img文件夹.放在WebRoot下面.(工程的根目录)
6. 编写我们的tree.jsp页面.
- <%@ page language="java" pageEncoding="utf-8"%>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>树形结构___ajax请求方式</title>
- <script type="text/javascript" src="dtree.js"></script>
- <script type="text/javascript" src="jquery.js"></script>
- <link rel="stylesheet" href="dtree.css" type="text/css"></link>
- <script type="text/javascript">
- tree = new dTree('tree');//创建一个对象.
- $.ajax({
- <A href="'NodesPrint'">url:'NodesPrint'</A>,
- type:'post', //数据发送方式
- dataType:'xml', //接受数据格式
- error:function(json){
- alert( "not lived!");
- },
- async: false ,//同步方式
- success: function(xml){
- $(xml).find("node").each(function(){
- var nodeId=$(this).attr("nodeId");
- var parentId=$(this).attr("parentId");
- var hrefAddress=$(this).attr("hrefAddress");
- var nodeName=$(this).text();
- tree.add(nodeId,parentId,nodeName,hrefAddress,"","","","",false);
- });
- }
- });
- document.write(tree);
- </script>
- </head>
- <body>
- </body>
- </html>