`

xloadTree和struts实现目录树动态加载

阅读更多
页面:testTree.jsp 需要导入xtree.js,xmlextras.js,xloadtree.js,xtree.css
可以在这里下载
http://webfx.eae.net/dhtml/xloadtree/xloadtree.html
<%@ page language="java"%>
<%@ page contentType="Text/html;charset=UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>My JSP 'testTree.jsp' starting page</title>
    
	<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">
	<script type="text/javascript" src="/view/test/xtree.js"></script>
  	<script type="text/javascript" src="/view/test/xmlextras.js"></script>
  	<script type="text/javascript" src="/view/test/xloadtree.js"></script>
  	<link type="text/css" rel="stylesheet" href="/view/test/xtree.css" />

  </head>
  
  <body>
    This is my JSP page. <br>
    
    <script type="text/javascript">
	
	/// XP Look
	webFXTreeConfig.rootIcon  = "/view/test/images/xp/folder.png";
	webFXTreeConfig.openRootIcon = "/view/test/images/xp/folder.png";
	webFXTreeConfig.folderIcon  = "/view/test/images/xp/folder.png";
	webFXTreeConfig.openFolderIcon = "/view/test/images/xp/openfolder.png";
	webFXTreeConfig.fileIcon  = "/view/test/images/xp/file.png";
	webFXTreeConfig.lMinusIcon  = "/view/test/images/xp/Lminus.png";
	webFXTreeConfig.lPlusIcon  = "/view/test/images/xp/Lplus.png";
	webFXTreeConfig.tMinusIcon  = "/view/test/images/xp/Tminus.png";
	webFXTreeConfig.tPlusIcon  = "/view/test/images/xp/Tplus.png";
	webFXTreeConfig.iIcon   = "/view/test/images/xp/I.png";
	webFXTreeConfig.lIcon   = "/view/test/images/xp/L.png";
	webFXTreeConfig.tIcon   = "/view/test/images/xp/T.png";
	
	//这里最好写绝对路径
	
	var tree = new WebFXTree("智能化多媒体培训平台");
	
	tree.add(new WebFXTreeItem("Tree me 1"));
	tree.add(new WebFXLoadTreeItem("Tree me 2","/view/test/test1.xml"));//这里也可以是xml路径
	tree.add(new WebFXTreeItem("Tree me 3"));
	tree.add(new WebFXLoadTreeItem("Tree me 4","/testTree.do"));//这里也可以是Action请求
	
	document.write(tree);
	
	
	</script> 
  </body>
</html>



Action:TestTreeAction.java
package testTree;

import java.io.PrintWriter;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class TestTreeAction extends Action{

	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		String asdf = request.getParameter("id");
		System.out.println(asdf);
	
        response.setCharacterEncoding("gb2312");
        response.setContentType("text/xml charset=gb2312");
        PrintWriter out = response.getWriter();
        out.write("<?xml version=\"1.0\" encoding=\"gb2312\"?>");
        out.write("<tree>");
        
        int asdfInt = 0;
        if(asdf == null || asdf.equals("") || asdf.equals("0")){
	        for(int i=1; i<=100; i++)
	        {
	        	out.write("<tree text="+"\""+"目录-"+i+"\""+" src=\"/testTree.do?id="+i+"\" />"); 
	        }
        }else{
        	asdfInt = Integer.valueOf(asdf);
        	if(asdfInt>= 1 || asdfInt <=100)
        	{
	        	for(int i=1; i<=100; i++)
	        	{
	        		if(asdfInt == i)
	        		{
	        			for(int k=101; k<=200; k++)
	        			{
	        				out.write("<tree text="+"\""+"目录-"+i+"--"+k+"\""+" src=\"/testTree.do?id="+i+k+"\" />"); 
	        			}
	        		}
	        	}
        	}
        	if(asdfInt>= 1101 || asdfInt <=100200)
        	{
	        	for(int i=1101; i<=100200; i++)
	        	{
	        		if(asdfInt == i)
	        		{
	        			for(int k=1; k<=100; k++)
	        			{
	        				out.write("<tree text=\"看课件啦"+i+"--"+k+"\" action=\"http://192.168.1.109:8080/Gw_studytrainunitSI_retrieve.do?trainunit_id=679\" />"); 
//out.write("<tree text=\"习题导入\" action=\"/view/jsp/share/excel/exerciseImport.jsp\" target=\"mainFrame\" />");
	        			}
	        		}
	        	}
        	}
        }
        	
        out.write("</tree>");
        out.flush();
		
		
		
		return null;	
	}

}



用起来比较方便
具体属性和方法可以参考附件xloadtree_zh_cn.zip

参考文件地址:
http://wocclyl.blog.163.com/blog/static/4622350420094125250842/
http://zghbwjl.blog.163.com/blog/static/120336672201062953322934/
分享到:
评论

相关推荐

    Struts实现动态树

    综上所述,"Struts2实现动态树结合Hibernate"涉及到的主要知识点有:Struts2 MVC框架的工作原理、Hibernate的实体映射和CRUD操作、前端动态加载的实现、Ajax技术以及Struts2的配置和Action设计。通过整合这些技术,...

    基于struts jquery实现的动态加载树形菜单

    通过上述介绍可以看出,使用Struts和jQuery结合可以非常方便地实现一个动态加载的树形菜单功能。这种实现方式不仅让菜单的展示更加灵活多变,同时也大大提升了用户体验。对于Web开发者来说,掌握这项技术是非常有益...

    struts2动态树形目录

    在本项目中,"struts2动态树形目录"实现了这一功能,用户可以通过界面动态地创建、编辑和删除目录。 首先,让我们深入了解一下Struts2框架。Struts2基于拦截器模式,提供了丰富的插件和拦截器,支持多种视图技术如...

    ExtJs在struts2.0.x下实现动态树的解决方案

    本文将深入探讨如何在Struts2.0.x框架下利用ExtJs库来实现动态树的解决方案。 首先,我们需要了解ExtJs。ExtJs是一个强大的JavaScript库,提供了丰富的组件和布局,用于构建富客户端应用程序。它提供了树形控件...

    jsp项目开发实录 Struts 实现 程序完整Struts 实现 程序完整

    jsp项目开发实录 jsp项目开发实录 Struts 实现 程序完整 Struts 实现 程序完整 Struts 实现 程序完整 Struts 实现 程序完整Struts 实现 程序完整Struts 实现 程序完整Struts 实现 程序完整Struts 实现 程序完整...

    ExtJS_Tree利用_JSON_在Struts_2实现Ajax动态加载树结点

    通过以上步骤,我们就能实现一个基于ExtJS Tree、JSON和Struts 2的Ajax动态加载树结构。这种技术允许我们仅加载当前需要的节点,提高应用的性能,并且可以轻松地与服务器端数据进行交互。同时,由于采用了JSON格式,...

    struts2动态树

    总之,Struts2动态树的实现涉及到了数据库操作、MVC设计模式的应用、前端交互逻辑和性能优化等多个方面,它是Java Web开发中一种常见的数据呈现形式,尤其适用于展示层级关系清晰的数据结构。通过熟练掌握这些技术,...

    struts2配置文件加载顺序

    了解Struts2配置文件的加载顺序对于优化应用性能和解决配置问题至关重要。 Struts2的配置主要分布在以下几个文件中: 1. **struts-default.xml**:这是Struts2的核心配置文件,位于`struts2-core.jar`库的`/org/...

    Struts2动态树的一些文章和案例

    下面将详细探讨Struts2动态树的实现原理、应用场景以及相关的知识点。 1. **Struts2框架基础** Struts2是一个基于MVC模式的开源Java Web框架,它提供了丰富的插件和拦截器,用于处理请求、验证输入、跳转页面等。...

    java+Struts+Hibernate实现的无限级树菜单

    这些库提供了方便的API来动态加载和操作树节点。在本项目中,可能会利用JSP页面结合JavaScript来渲染树形菜单。 6. **文档`Struts+hibernate树形菜单.doc`**: 这个文档很可能包含了项目的详细步骤、配置说明、...

    动态树 Struts2.0

    3. **数据传递**: 为了实现树的动态加载,即按需加载子节点,通常需要在Action中添加处理请求的方法,接收来自客户端的请求参数,如当前选中的节点ID,然后返回对应的子节点数据。 4. **JavaScript和AJAX**: 为了...

    struts2树的编写

    6. **动态加载**:为了提高性能,可以实现树的懒加载,即只在用户需要时加载子节点。这可以通过在Action中添加额外的方法来处理特定节点的子节点请求,并在前端进行相应的Ajax调用。 总结起来,构建Struts2中的树形...

    struts+jQuery实现树

    **Struts与jQuery结合实现树形...总之,"Struts+jQuery实现树"项目是一个结合了Struts MVC框架和jQuery强大功能的应用实例,它展示了如何在Web应用中创建动态、交互性强的树形结构,同时提供了源码供开发者学习和扩展。

    使用struts实现分页

    3. **.struts-config.xml配置文件**:在实现分页功能时,需要在项目的配置文件`struts-config.xml`中定义Action以及相关的ActionForm和ActionForward。ActionForm用于封装用户请求的数据,ActionForward则定义了请求...

    struts 预加载数据demo

    Struts预加载数据的实现是Web开发中...通过以上讲解,我们了解了如何利用Struts2和Ajax实现数据预加载,以及这个示例项目的关键组成部分和技术栈。这不仅可以提升用户体验,还可以为开发者提供优化Web应用性能的思路。

    Struts 2项目 ajax动态生成树形菜单

    在本项目中,我们探讨的是如何利用Struts2框架和AJAX技术动态地从数据库中获取数据,并生成交互式的树形菜单。树形菜单在Web应用中常见于导航系统,因为它能清晰地展示层次结构,方便用户浏览和操作。 首先,让我们...

    struts2+Jquery+json+treeview 动态加载树菜单

    标题中的“struts2+Jquery+json+treeview 动态加载树菜单”涉及的是一个Web开发中的技术组合,主要用于创建交互式的、可动态加载的数据展示界面。下面将详细解释这些技术及其在实现动态树菜单中的作用。 Struts2是...

    struts实现java树形菜单

    在本文中,我们将探讨如何使用Struts和JavaScript的dTree库来实现一个树形菜单。树形菜单在各种Web应用中非常常见,如权限管理、导航系统等,因为它提供了层次清晰、易于交互的界面。 首先,我们需要了解dTree的...

    Struts2+IText动态导出PDF示例源码

    总的来说,这个示例展示了如何在Java Web环境中集成多个库,实现数据的动态导入导出和PDF生成,对于理解Web应用的开发流程、Struts2的控制逻辑、IText的PDF操作、以及POI与Hibernate的数据库操作有很好的学习价值。...

    struts2 加载包

    总的来说,Struts2加载包的过程是构建和运行Struts2应用的基础,它涉及到核心库、插件、第三方依赖和特定工具库的组合。通过合理选择和管理这些包,可以有效地构建出高效、稳定且功能丰富的Java Web应用程序。

Global site tag (gtag.js) - Google Analytics