一个 .<s:tree>方法:

1.引入新的标签:

<%@ taglib prefix="sd" uri="/struts-dojo-tags" %>

2.引入jar包:

struts2-dojo-plugin-2.2.3.jar

3.在<head>中增加

<sd:head/>

4.前台代码:

  <sd:tree id="a" label="总公司">
<sd:treenode id="aa" label="北京分公司" />
<sd:treenode id="bb" label="上海分公司">
<sd:treenode id="bbb1" label="综合管理部" />
<sd:treenode id="bbb2" label="研发部" />
</sd:treenode>
<sd:treenode id="cc" label="深圳分公司" />
</sd:tree>

二.dtree方法(通过读取数据库中表显示到dtree):

1.下载插件dtree。地址:http://download.csdn.net/detail/ahhmdwg/8132227

2.导入到你的web项目中:css文件和js文件放到你的项目中,将example01.html文件里的代码copy到你须要显示树形结构的jsp页面。

(1)建立数据库表:

CREATE TABLE `tree` (
`id` int(11) NOT NULL,
`name` varchar(20) DEFAULT NULL,
`parentId` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(2)bean包下类:

package com.dwg.bean;

public class Tree {
private int id; private String name; private int parentId; public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getParentId() {
return parentId;
} public void setParentId(int parentId) {
this.parentId = parentId;
} }

(3)dao层运行的自己定义sql:

public List<?

> getTreeList(final String sql) {
// TODO Auto-generated method stub return (List<?>) this.getHibernateTemplate().execute(
new HibernateCallback()
{
public Object doInHibernate(final Session session) throws HibernateException, SQLException
{
final SQLQuery query = session.createSQLQuery(sql);
return query.list(); } });
}

(4)action类:

    public String execute() throws Exception{
String sql = "select * from tree";
list = this.treeService.getTreeList(sql);
Map request = (Map) ActionContext.getContext().get("request");
System.out.println("----list1----");
request.put("list", list);
System.out.println("----list2----"); return SUCCESS;
}

(5)struts.xml文件配置

    <package name="dtree"  namespace="/dtree" extends="struts-default">
<action name="dtree" class="TreeAction">
<result name="success">/dtree.jsp</result>
</action>
</package>

(6)index.jsp页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<base href="<%=basePath%>">
<title>Insert title here</title>
<sd:head/>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body> <a href="<%=basePath%>dtree/dtree.action">DtreeDemo</a>
</body>
</html>

dtree.jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head>
<base href="<%=basePath%>">
<title>Destroydrop » Javascripts » Tree</title> <link rel="StyleSheet" href="<%=basePath%>css/dtree.css" type="text/css" />
<script type="text/javascript" src="<%=basePath%>script/dtree.js"></script> </head> <body> <h1><a href="/">Destroydrop</a> » <a href="/javascripts/">Javascripts</a> » <a href="/javascripts/tree/">Tree</a></h1> <h2>Example</h2> <div class="dtree"> <p><a href="javascript: d.openAll();">open all</a> | <a href="javascript: d.closeAll();">close all</a></p>
<script type="text/javascript"> d = new dTree('d');
//构造根节点
d.add(0,-1,'idada');
<s:iterator value="list" id="us">
d.add(<s:property value="#us[0]"/>,<s:property value="#us[2]"/>,'<s:property value="#us[1]"/>','dtree.jsp');
</s:iterator>
document.write(d); </script> </div> <p><a href="mailto:drop@destroydrop.com">&copy;2002-2003 Geir Landrö</a></p> </body> </html>

(7)文件夹结构截图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWhobWR3Zw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

执行效果:

版权声明:本文博客原创文章。博客,未经同意,不得转载。

最新文章

  1. 在js中获取在css中设置的background-image值
  2. Linux 下 git连接github的使用
  3. linux用户、组管理及权限(一)
  4. 20145325张梓靖 实验三 &quot;敏捷开发与XP实践&quot;
  5. Types of Entity in Entity Framework:
  6. java泛型 8 泛型的内部原理:类型擦除以及类型擦除带来的问题
  7. http协议与内容压缩
  8. 【cogs247】售票系统
  9. 百度统计和CNZZ到底有哪些不同?
  10. 图像处理特征不变算子系列之Moravec算子(一)
  11. POJ3259负环判定
  12. python多线程学习笔记(超详细)
  13. Android -- 贝塞尔使圆渐变为桃心
  14. .4-Vue源码之数据劫持(2)
  15. [学习OpenCV攻略][016][RedHat下安装OpenCV]
  16. C# listview展示表格格式
  17. element-UI表单验证
  18. 如何才能成为一个合格的web前端工程师
  19. SVN服务端和客户端的说明与操作
  20. 通过 curl 传递数据

热门文章

  1. Simple Addition
  2. Repeater控件
  3. java--多线程之Thread继承
  4. Jquery学习笔记:利用find和children方法获取后代元素
  5. Ubuntu一些配置和技巧
  6. Esper学习之五:EPL语法(一)
  7. Android Socket 开发技术
  8. three.js 源代码凝视(十)Math/Line3.js
  9. SDUT 2860-生日Party(BFS)
  10. C# 中 双问号??的用法