在JSP页面上显示树

我需要在JSP页面上显示树。 我怎样才能做到这一点? 我有以下对象:

public class Node { private Long id; private Long parentId; private String name; private List children; // Getters & setters } 

使用jsp递归滚动自己

Controller.java

 Node root = getTreeRootNode(); request.setAttribute("node", root); 

main.jsp页面中

  

node.jsp

      

基于http://web.archive.org/web/20130509135219/http://blog.boyandi.net/2007/11/21/jsp-recursion/

您可以尝试http://www.soft82.com/download/windows/tree4jsp/

它也可以从http://www.einnovates.com/jsptools/tree4jsp/tree4jsp_v1.2.zip下载。

Jsp树项目可以帮到你。

我建议你使用一个可用的标签库。 例如:

http://beehive.apache.org/docs/1.0/netui/tagsTree.html

以下讨论也有帮助。 http://www.jguru.com/faq/view.jsp?EID=46659

只需检查这个JSP树。 它很简单,并且具有最小的Java脚本。 我使用了速度模板和JSP Tag类。

简单的JSP树

JSP标记中的递归

 // Compilation from the other answers. Tested myself. 

Unit.java

 public class Unit { private String name; private HashSet units; // getters && setters } 

Employees.java

 public class Employees { private HashSet units; // getters && setters } 

Application.java

 ... request.setAttribute("employees", employees); request.getRequestDispatcher("EmployeeList.jsp").forward(request, response); ... 

EmployeeList.jsp

 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>    ...   ... 

Unit.jsp

 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ${unit.getName()} ...