`
1324913579
  • 浏览: 6872 次
  • 性别: Icon_minigender_1
  • 来自: 贵州
社区版块
存档分类
最新评论

hibernate+spring+dwr+javascript实现无限制动态栏目增加

阅读更多
创建模型:Module.java
import java.util.Set;
import java.util.HashSet;
/*
* 模板
* 分为简介类模板,新闻类模板
* type为0表示为简介类模板
* 为1表示为新闻类模板
*/
public class Module {
private int id;
/**
* 模块名称
*/
private String name;
/**
* 模块编号
*/
// private String sn;
/**
* 模块入口地址
*/
private String url;
/**
* 模块排序号
*
*/
private int orderNum;
/**
* 父模块
* 如果是顶级模块,parent=null
* @hibernate.many-to-one not-found="ignore" column="parentId"
*/
private Module parent;
/**
* 子模块
*/
private Set<Module> children = new HashSet<Module>();
}

hibernate映射文件:Module.hbm.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
  <class table="t_module" name="bear.model.Module">
    <id access="field" name="id">
      <generator class="native"/>
    </id>
    <property name="name" access="field" unique="true" not-null="true"/>
    <property name="type" access="field" not-null="true"/>
    <property name="url" access="field"/>
    <property name="orderNum" access="field"/>
    <many-to-one column="parentId" access="field" not-found="ignore" name="parent"/>
    <set inverse="true" access="field" lazy="extra" name="children" order-by="orderNum">
      <key column="parentId"/>
      <one-to-many class="bear.model.Module"/>
    </set>
  </class>
</hibernate-mapping>

逻辑层:ModuleService.java
/*
* 返回所有顶级模块
*/
public List<Module> getTop(){
     String hql = "from Module";
     List list = dao.QueryByList(hql, null);
     List<Module> tops = new ArrayList<Module>();
     for(int i=0;i<list.size();i++){
         Module m = (Module)list.get(i);
if(m.getParent() == null)
    tops.add(m);
}
return tops;
     }
}
spring配置:
<!-- 模块服务 -->
<bean id="ModuleService" class="bear.service.impl.ModuleServiceImpl">
    <property name="dao" ref="daoProxy"></property>
</bean>

dwr文件配置:dwr.xml
<create javascript="ModuleManager" creator="spring">
    <param name="beanName" value="ModuleService"></param>
</create>
<convert converter="bean" match="bear.model.Module"></convert>
javascript文件:module.js
javascript通过递归方式实现无限制栏目显示,
/**
* 从服务器读取顶级栏目(模块)
*/
function InitModule(){
    ModuleManager.getTop(function(data){
        for(var i=0; i<data.length;i++){
   walk(data);
        }
    });
}
/*
  * 递归读取栏目(模块)
  */
function walk(data){
    for(var i=0;i<data.length;i++){
        //创建HTML标签DIV
var div = document.createElement("div");
div.style.width="100%";
div.style.marginLeft="20px";
//创建A标签,生成顶级栏目,给栏目加上链接
div.innerHTML = "<div style=\"float:left\">"+
"<a>" +data[i].name +"</a>"+
"</div>"+
"<div style=\"float:right\">" +
"<a onclick=\"openWin('saveModule.action?parentId="+data[i].id+"','saveModule',500,200);\">"+
"添加子栏目"+
"</a> | "+
"<a onclick=\"openWin('openUpdateModule.action?module.id="+data[i].id+"','saveModule',500,200);\">"+
"修改栏目"+
"</a> | " +
"<a href=\"delModule.action?module.id="+data[i].id+"\" onClick=\"return del();\">"+
"删除栏目"+
"</a>" +
"</div>";
$("listcontent").appendChild(div);
var children = data[i].children;
if(children.length>0){
walk(children);
}
    }
}

分享到:
评论

相关推荐

    struts2+hibernate+spring+dwr整合

    Struts2、Hibernate、Spring 和 DWR 是四个在Java Web开发中非常重要的框架,它们各自在不同的领域提供了强大的功能,并且能够通过整合实现更高效、更灵活的应用开发。接下来,我们将详细探讨这些技术以及它们如何...

    Struts2 + Spring + Hibernate + DWR 项目布署笔记

    "Struts2 + Spring + Hibernate + DWR"是一个常见的Java Web开发框架组合,用于构建动态、数据驱动的Web应用程序。这个项目部署笔记将深入探讨这四个组件的核心功能以及它们如何协同工作。 首先,Struts2是一个基于...

    ext2+spring+hibernate+dwr.rar_dwr MenuManage.js_ext2 ja

    标题 "ext2+spring+hibernate+dwr.rar_dwr MenuManage.js_ext2 ja" 提示我们这是一个关于集成技术的项目,其中包含了ext2、Spring、Hibernate和DWR(Direct Web Remoting)四个主要组件。这个项目的具体实现是通过...

    Struts2 + spring + hibernate + dwr 完美整合代码

    Struts2、Spring、Hibernate和DWR是Java Web开发中常用的四大框架,它们各自负责不同的职责,协同工作可以构建出高效、稳定且易于维护的Web应用程序。本项目整合了这四大框架,实现了用户注册、多级下拉联动及表格...

    struts2+hibernate+spring+dwr(用户注册)

    Struts2、Hibernate、Spring 和 DWR 是四个在 Java Web 开发中广泛应用的框架和技术,它们结合在一起可以构建高效、可维护的用户注册系统。以下是对这些技术的详细解释及其在用户注册中的应用: 1. **Struts2**:这...

    struts2+spring+hibernate+dwr

    Struts2、Spring、Hibernate和DWR是Java Web开发中常用的四大框架,它们各自负责不同的功能,协同工作能构建出高效、灵活的企业级应用。在这个小实例中,开发者结合这四个框架来展示了一个完整的后端架构。 Struts2...

    Struts1.2+Hibernate3.0+Spring2+DWR OA 办公自动化管理系统

    **DWR** 是一种JavaScript到Java的远程调用技术,允许在浏览器端直接调用服务器端的方法,实现动态更新和实时交互。DWR简化了Ajax(Asynchronous JavaScript and XML)开发,让Web应用能够提供类似桌面应用的用户...

    struts+hibernate+spring+dwr的案例

    这个"struts+hibernate+spring+dwr的案例"旨在展示如何将这四个框架集成到一个应用中,以实现高效、灵活且功能丰富的Web应用程序。 **Struts** 是一个用于构建MVC(Model-View-Controller)架构的Java框架,它提供...

    struts+spring+hibernate+dwr+分页例子

    在这个“struts+spring+hibernate+dwr+分页例子”中,我们将深入探讨这四个框架的集成以及分页功能的实现。 1. **Struts**: Struts 是一个基于MVC(Model-View-Controller)设计模式的Java Web框架。它主要负责处理...

    OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)

    这个系统采用了经典的Java技术栈,包括Struts1.2、Hibernate3.0、Spring2以及DWR,这些都是Java开发中的核心框架。 Struts1.2是MVC(Model-View-Controller)设计模式的实现,它在Web应用中负责处理请求、控制业务...

    Struts2+Spring+Hibernate+DWR实现的城市联动

    在这个"Struts2+Spring+Hibernate+DWR实现的城市联动"项目中,我们将深入探讨这四个框架如何协同工作,以及它们在实现动态数据交互中的关键作用。 首先,Struts2是一个基于MVC(Model-View-Controller)设计模式的...

    Spring 2.0 + Struts 1.2 + Hibernate 3.2 + DWR 2.0 的JavaEE应用示例

    学习对象:熟悉JavaScript, 了解JSTL, servlet/JSP, Struts 1.2, Hibernate, Spring, Ajax技术。 该示例使用MyEclipse 5.5 IDE用来整合四个技术(Struts 1.2, Spring 2.0, Hibernate 3.2和Ajax技术)的轻量级的...

    struts2+spring+hibernate+jquery+dwr+json

    标题 "struts2+spring+hibernate+jquery+dwr+json" 描述了一个集成的Web应用程序开发框架,其中包含了多个关键技术和库。这个框架旨在提高开发效率,提供灵活的数据管理,以及用户友好的前端交互。 1. Struts2:...

    OA 办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)

    **DWR (Direct Web Remoting)** 是一个JavaScript到Java的远程调用框架,允许在浏览器端直接调用服务器端的方法,实现了前端与后端的实时交互。在OA系统中,DWR提高了用户体验,使得用户可以实时查看和更新数据,而...

    sturts2+spring+hibernate+dwr2

    Struts2、Spring、Hibernate和DWR2是四个在Java Web开发中非常关键的技术框架,它们共同构建了一个强大且灵活的后端系统架构。这里,我们将会深入探讨这些技术及其在实际项目中的应用。 首先,Struts2是一个MVC...

    Ajax(DWR) + Spring + Hibernate + Struts整合登陆注册

    Ajax、Spring、Hibernate和Struts是Java Web开发中的四大核心技术,它们各司其职,共同构建了一个高效、灵活且功能强大的后端架构。这个小例子将这四个框架整合在一起,用于实现一个登录注册系统,提供了从客户端到...

    struts1.2+hibernate3.2+spring2.5+dwr

    学习这些资料,开发者可以掌握如何在实际项目中有效地利用Struts1.2处理请求、通过Hibernate3.2管理数据库、借助Spring2.5实现依赖注入和业务逻辑控制,以及利用DWR2.0创建实时的Web应用。此外,还可能涵盖了如何...

Global site tag (gtag.js) - Google Analytics