`

spring+dwr

阅读更多

首先开发环境是eclipse.这里需要hibernate3.2和spring2.5,dwr2.0.5,dbcp1.2.2的jar包(这些都是在相应的官方网站下载)
这里我选择的场景是从数据库中读取到一个自己链接的类别显示表sort
下面是其实体类和相应的配置文件代码:
Sort.java

Java代码
package com.tree.entity;   
  
import java.util.HashSet;   
import java.util.Set;   
  
public class Sort {   
private int id;   
private String name;//类别的名字   
private Sort parent;//父节点   
private Set<Sort> childrens;//子节点   
//geter.seter.....   
}  
package com.tree.entity;

import java.util.HashSet;
import java.util.Set;

public class Sort {
private int id;
private String name;//类别的名字
private Sort parent;//父节点
private Set<Sort> childrens;//子节点
//geter.seter.....
}

Sort.hbm.xml:

Java代码
<?xml version="1.0"?>   
<!DOCTYPE hibernate-mapping PUBLIC    
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"  
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">   
<hibernate-mapping    
    package="com.tree.entity">   
    <class name="Sort" table="tb_sort">   
    <id name="id">   
    <generator class="native"></generator>   
    </id>   
    <property name="name"></property>   
    <many-to-one name="parent" column="sid"/>   
    <set name="childrens">   
    <key>   
    <column name="sid"></column>   
    </key>   
    <one-to-many class="Sort"/>   
    </set>   
    </class>   
<!--    
//这里使用了Hibernate的命名查询.   
//将你的每个实现映射实例对应的表操作语句都统一写到此处..方便统一管理   
//命名查询也可以使用2级缓冲.方便优化Hibernate的数据库操作   
 -->   
    <query name="findAllParent">   
    <![CDATA[   
    from Sort sort where sort.parent=null  
    ]]></query>   
    <query name="findChildByParent">   
    <![CDATA[   
    from Sort sort where sort.parent.id=?   
    ]]></query>   
</hibernate-mapping>  
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
 "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping
 package="com.tree.entity">
 <class name="Sort" table="tb_sort">
 <id name="id">
 <generator class="native"></generator>
 </id>
 <property name="name"></property>
 <many-to-one name="parent" column="sid"/>
 <set name="childrens">
 <key>
 <column name="sid"></column>
 </key>
 <one-to-many class="Sort"/>
 </set>
 </class>
<!--
//这里使用了Hibernate的命名查询.
//将你的每个实现映射实例对应的表操作语句都统一写到此处..方便统一管理
//命名查询也可以使用2级缓冲.方便优化Hibernate的数据库操作
 -->
 <query name="findAllParent">
 <![CDATA[
 from Sort sort where sort.parent=null
 ]]></query>
 <query name="findChildByParent">
 <![CDATA[
 from Sort sort where sort.parent.id=?
 ]]></query>
</hibernate-mapping>

看了2个相应的映射实例.我们看看如何完成dao
SortDaoImpl.java

Java代码
package com.tree.dao;   
  
import java.util.List;   
  
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;   
  
import com.tree.entity.Sort;   
/**  
 * 这里与Spring的整合.使用了Spring提供的HibernateDaoSupport  
 * 因为该类提供了getHibernateTemplate()的方法可以获取到HibernateTemplate  
 * @author chenjj  
 */  
public class SortDaoImpl extends HibernateDaoSupport implements SortDaoInf {   
    /**  
     * 添加数据  
     *  @param 需要添加的实例  
     */  
    public void save(Sort sort) {   
        this.getHibernateTemplate().save(sort);   
    }   
    /**  
     * 通过id查找Sort类实例  
     *  @param 类型id  
     */  
    public Sort find(int id) {   
        return (Sort) this.getHibernateTemplate().get(Sort.class, id);   
    }   
    /**  
     * 查询所以父节点实例  
     *   
     */  
    @SuppressWarnings("unchecked")   
    public List findAllParent() {   
        return this.getHibernateTemplate().findByNamedQuery("findAllParent");   
    }   
    /**  
     * 通过父节点id找到其子节点实例  
     * @param id 父节点id  
     */  
    @SuppressWarnings("unchecked")   
    public List findChildByParentId(int id) {   
//使用findByNamedQuery(“相应的配置文件中你对应要使用查询语句的名字”)   
        return this.getHibernateTemplate().findByNamedQuery("findChildByParent", id);   
    }   
       
}  
package com.tree.dao;

import java.util.List;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.tree.entity.Sort;
/**
 * 这里与Spring的整合.使用了Spring提供的HibernateDaoSupport
 * 因为该类提供了getHibernateTemplate()的方法可以获取到HibernateTemplate
 * @author chenjj
 */
public class SortDaoImpl extends HibernateDaoSupport implements SortDaoInf {
 /**
  * 添加数据
  *  @param 需要添加的实例
  */
 public void save(Sort sort) {
  this.getHibernateTemplate().save(sort);
 }
 /**
  * 通过id查找Sort类实例
  *  @param 类型id
  */
 public Sort find(int id) {
  return (Sort) this.getHibernateTemplate().get(Sort.class, id);
 }
 /**
  * 查询所以父节点实例
  *
  */
 @SuppressWarnings("unchecked")
 public List findAllParent() {
  return this.getHibernateTemplate().findByNamedQuery("findAllParent");
 }
 /**
  * 通过父节点id找到其子节点实例
  * @param id 父节点id
  */
 @SuppressWarnings("unchecked")
 public List findChildByParentId(int id) {
//使用findByNamedQuery(“相应的配置文件中你对应要使用查询语句的名字”)
  return this.getHibernateTemplate().findByNamedQuery("findChildByParent", id);
 }
 
}

HibernateTemplate提供非常多的常用方法来完成基本的操作,比如通常的增加、删除、修改、查询等操作,Spring 2.0更增加对命名SQL查询的支持,也增加对分页的支持。大部分情况下,使用Hibernate的常规用法,就可完成大多数DAO对象的CRUD操作。下面是HibernateTemplate的常用方法简介:

q      void delete(Object entity):删除指定持久化实例

q      deleteAll(Collection entities):删除集合内全部持久化类实例

q      find(String queryString):根据HQL查询字符串来返回实例集合

q      findByNamedQuery(String queryName):根据命名查询返回实例集合

q      get(Class entityClass, Serializable id):根据主键加载特定持久化类的实例

q      save(Object entity):保存新的实例

q      saveOrUpdate(Object entity):根据实例状态,选择保存或者更新

q      update(Object entity):更新实例的状态,要求entity是持久状态

q      setMaxResults(int maxResults):设置分页的大小

上面对应一些基本的操作解析
下面是配置文件的配置:
首先是web.xml文件中如下:

Java代码
 <!--   
//配置DWR拦截器   
-->      
 <servlet>      
  <servlet-name>dwr-invoker</servlet-name>      
  <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>      
  <init-param>      
   <param-name>debug</param-name>      
   <param-value>true</param-value>      
  </init-param>      
 </servlet>      
 <servlet-mapping>      
  <servlet-name>dwr-invoker</servlet-name>      
  <url-pattern>/dwr/*</url-pattern>      
 </servlet-mapping>   
 <!--    
//这里你需要告诉服务器你的spring的配置放到什么地方.这里我选择是在src文件夹下面   
 -->   
   <context-param>   
        <param-name>contextConfigLocation</param-name>   
        <param-value>classpath:applicationContext.xml</param-value>   
    </context-param>   
  
 <!--    
//定义 Spring 的上下文监听器,它会负责初始化 ApplicationContext(spring的环境)   
-->   
    <listener>   
        <listener-class>   
            org.springframework.web.context.ContextLoaderListener   
        </listener-class>   
    </listener>  
 <!--
//配置DWR拦截器
-->  
 <servlet>  
  <servlet-name>dwr-invoker</servlet-name>  
  <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>  
  <init-param>  
   <param-name>debug</param-name>  
   <param-value>true</param-value>  
  </init-param>  
 </servlet>  
 <servlet-mapping>  
  <servlet-name>dwr-invoker</servlet-name>  
  <url-pattern>/dwr/*</url-pattern>  
 </servlet-mapping>
 <!--
//这里你需要告诉服务器你的spring的配置放到什么地方.这里我选择是在src文件夹下面
 -->
   <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>

 <!--
//定义 Spring 的上下文监听器,它会负责初始化 ApplicationContext(spring的环境)
-->
    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>

dwr.xml(存放在WEB-INF中)的文件配置:

Java代码
<?xml version="1.0" encoding="UTF-8"?>   
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">   
  
<dwr>   
  
  <allow>   
  <!--   
    //这里create表示创建的对象方式以及生成的js文件的名字   
    //javascript:表示生成的js文件的名字;   
    //creator:表示创建的方式;   
    //<param>表示要创建具体的类   
    //name="class"这是一个类;   
    //value="[编写具体的类名]";   
  // 因为整合spring.这里creator的属性设置为spring.   
   -->   
  <create javascript="sortDaoInf" creator="spring">   
  <!--    
  //param元素的name属性值可以是class,beanName等,此处用beanName,   
  //value得值是定义在applicationContext.xml中某个bean的id值。   
   -->   
    <param name="beanName" value="DWRSortDaoInf"></param>   
  </create>   
  <!--     
    //convert:配置具体的javabean;   
    //match:具体的java类名;   
    //converter:表示使用的方式;   
    //bean ==> 符合javabean规范的形式进行创建;   
    //date ==> 专门用于转换util.Date和sql.Date   
           
   -->   
  <convert match="com.tree.entity.Sort" converter="bean">   
  <param name="include" value="id,name"></param>   
  </convert>   
  </allow>       
</dwr>  
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">

<dwr>

  <allow>
  <!--
   //这里create表示创建的对象方式以及生成的js文件的名字
 //javascript:表示生成的js文件的名字;
 //creator:表示创建的方式;
 //<param>表示要创建具体的类
 //name="class"这是一个类;
 //value="[编写具体的类名]";
  // 因为整合spring.这里creator的属性设置为spring.
   -->
  <create javascript="sortDaoInf" creator="spring">
  <!--
  //param元素的name属性值可以是class,beanName等,此处用beanName,
  //value得值是定义在applicationContext.xml中某个bean的id值。
   -->
  <param name="beanName" value="DWRSortDaoInf"></param>
  </create>
  <!-- 
 //convert:配置具体的javabean;
 //match:具体的java类名;
 //converter:表示使用的方式;
 //bean ==> 符合javabean规范的形式进行创建;
 //date ==> 专门用于转换util.Date和sql.Date
  
   -->
  <convert match="com.tree.entity.Sort" converter="bean">
  <param name="include" value="id,name"></param>
  </convert>
  </allow> 
</dwr>

applicationContext.xml的配置

Java代码
<?xml version="1.0" encoding="UTF-8"?>   
<beans xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">   
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">   
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>   
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/gao"/>   
        <property name="username" value="root"/>   
        <property name="password" value="root"/>   
    </bean>   
    <!-- 定义HibernateSessionFacotry -->   
    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">   
        <!-- 使用指定的数据源 -->   
        <property name="dataSource" ref="dataSource"/>   
        <!-- 指定需要映射的实体 -->   
        <property name="mappingResources">   
        <list>   
        <value>com/tree/entity/Sort.hbm.xml</value>   
        </list>   
        </property>   
        <property name="hibernateProperties">   
            <value>   
                hibernate.dialect = org.hibernate.dialect.MySQLInnoDBDialect   
                hibernate.cache.provider_class = org.hibernate.cache.NoCacheProvider   
                hibernate.format_sql = true  
                hibernate.show_sql = true  
                hibernate.hbm2ddl.auto = update   
            </value>   
        </property>   
    </bean>   
<!--   
//这里DWRSortDaoInf要与dwr中creater的beanName的value相一致   
-->   
    <bean id="DWRSortDaoInf" class="com.tree.dao.SortDaoImpl">   
    <property name="sessionFactory" ref="sessionFactory"/>   
    </bean>   
</beans>  
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
  <property name="url" value="jdbc:mysql://127.0.0.1:3306/gao"/>
  <property name="username" value="root"/>
  <property name="password" value="root"/>
 </bean>
 <!-- 定义HibernateSessionFacotry -->
 <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  <!-- 使用指定的数据源 -->
  <property name="dataSource" ref="dataSource"/>
  <!-- 指定需要映射的实体 -->
  <property name="mappingResources">
  <list>
  <value>com/tree/entity/Sort.hbm.xml</value>
  </list>
  </property>
  <property name="hibernateProperties">
   <value>
    hibernate.dialect = org.hibernate.dialect.MySQLInnoDBDialect
    hibernate.cache.provider_class = org.hibernate.cache.NoCacheProvider
    hibernate.format_sql = true
    hibernate.show_sql = true
    hibernate.hbm2ddl.auto = update
   </value>
  </property>
 </bean>
<!--
//这里DWRSortDaoInf要与dwr中creater的beanName的value相一致
-->
 <bean id="DWRSortDaoInf" class="com.tree.dao.SortDaoImpl">
 <property name="sessionFactory" ref="sessionFactory"/>
 </bean>
</beans>

完成这些后台的配置与必要的操作定义后..
就可以实现页面树的显示
页面为tree.jsp:因为大部分的操作都使用了tree.js上面.而通过访问http://127.0.0.1:8080/tree(我的项目名称)/dwr可以获取到dwr生成后转化成的js
  <script type='text/javascript' src='/tree/dwr/interface/sortDaoInf.js'></script>
  <script type='text/javascript' src='/tree/dwr/engine.js'></script>
  <script type='text/javascript' src='/tree/dwr/util.js'></script>

Java代码
<%@ page language="java" contentType="text/html; charset=UTF-8"  
    pageEncoding="ISO-8859-1"%>   
<html>   
<head>   
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">   
  <script type='text/javascript' src='/tree/dwr/interface/sortDaoInf.js'></script>   
  <script type='text/javascript' src='/tree/dwr/engine.js'></script>   
  <script type='text/javascript' src='/tree/dwr/util.js'></script>   
  <script type="text/javascript" src="js/tree.js"></script>   
<title>Insert title here</title>   
</head>   
<body>   
<div id="tree">   
</div>   
</body>   
</html>  
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="ISO-8859-1"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <script type='text/javascript' src='/tree/dwr/interface/sortDaoInf.js'></script>
  <script type='text/javascript' src='/tree/dwr/engine.js'></script>
  <script type='text/javascript' src='/tree/dwr/util.js'></script>
  <script type="text/javascript" src="js/tree.js"></script>
<title>Insert title here</title>
</head>
<body>
<div id="tree">
</div>
</body>
</html>

核心的tree.js的代码如下:

Java代码
//在页面启动的时候操作   
window.onload=function() {   
    var tree = document.getElementById("tree");   
       
    sortDaoInf.findAllParent(function(sorts){//获取到所有的父元素   
        for(var i=0;i<sorts.length;i++) {   
            var sort = sorts[i];   
            var my_ul = document.createElement("ul");   
            my_ul.innerHTML="<li id="+sort.name+"><img id="+sort.id+" src='img/plus.gif' onclick='getSubtree(\""+sort.name+"\","+sort.id+")'/><img src='img/folder.gif'/></li>";   
            tree.appendChild(my_ul);   
        }   
    });   
}   
  
    function getSubtree(){   
//传递的参数可以使用arguments[index..]来获取.javascript一个扩展特点   
               var name = arguments[0];//获取第一个参数的值   
               var id = arguments[1];//获取第二个参数的值   
                var element = document.getElementById(name);   
                var my_ul = document.createElement("ul");//创建一个ul的元素   
                sortDaoInf.findChildByParentId(id,function (sorts){//使用sortDaoInf的方法.id为传递的参数.sorts为回调函数.   
                    var str="";   
                    for(var i=0;i<sorts.length;i++) {   
                        var sort = sorts[i];   
                        str+="<li id="+sort.id+">"+sort.name+"</li>";//将获取到的数据用li形式表示   
                    }   
                my_ul.innerHTML = str;//将获取到所以li元素添加到相应的ul中   
                element.appendChild(my_ul);   
  
                //把"+"号变成"-"号   
                var img = document.getElementById(id);   
                img.setAttribute("src","img/minus.gif");   
                   
                img.onclick = function () {   
                                    showHide(name,id,element);   
                                 };    
                });    
            }   
  
            function showHide(){   
                var name = arguments[0];//获取第一个参数的值   
               var id = arguments[1];//获取第二个参数的值   
               var root = arguments[2];//获取第三个参数的值   
                var element = document.getElementById(name);   
                var img = document.getElementById(id);//获取到相应的Img元素   
                img.src = "img/plus.gif";   
                img.onclick = function(){   
                                    getSubtree(name,id);   
                                }   
                var subs = element.lastChild;   
                root.removeChild(subs);//将父元素中子元素删除掉   
                //subs.style.display="none";   
            }  
//在页面启动的时候操作
window.onload=function() {
 var tree = document.getElementById("tree");
 
 sortDaoInf.findAllParent(function(sorts){//获取到所有的父元素
  for(var i=0;i<sorts.length;i++) {
   var sort = sorts[i];
   var my_ul = document.createElement("ul");
   my_ul.innerHTML="<li id="+sort.name+"><img id="+sort.id+" src='img/plus.gif' onclick='getSubtree(\""+sort.name+"\","+sort.id+")'/><img src='img/folder.gif'/></li>";
   tree.appendChild(my_ul);
  }
 });
}

 function getSubtree(){
//传递的参数可以使用arguments[index..]来获取.javascript一个扩展特点
      var name = arguments[0];//获取第一个参数的值
      var id = arguments[1];//获取第二个参数的值
    var element = document.getElementById(name);
    var my_ul = document.createElement("ul");//创建一个ul的元素
    sortDaoInf.findChildByParentId(id,function (sorts){//使用sortDaoInf的方法.id为传递的参数.sorts为回调函数.
     var str="";
     for(var i=0;i<sorts.length;i++) {
      var sort = sorts[i];
      str+="<li id="+sort.id+">"+sort.name+"</li>";//将获取到的数据用li形式表示
     }
    my_ul.innerHTML = str;//将获取到所以li元素添加到相应的ul中
    element.appendChild(my_ul);

    //把"+"号变成"-"号
    var img = document.getElementById(id);
    img.setAttribute("src","img/minus.gif");
    
    img.onclick = function () {
         showHide(name,id,element);
         };
    }); 
   }

   function showHide(){
    var name = arguments[0];//获取第一个参数的值
      var id = arguments[1];//获取第二个参数的值
      var root = arguments[2];//获取第三个参数的值
    var element = document.getElementById(name);
    var img = document.getElementById(id);//获取到相应的Img元素
    img.src = "img/plus.gif";
    img.onclick = function(){
         getSubtree(name,id);
        }
    var subs = element.lastChild;
    root.removeChild(subs);//将父元素中子元素删除掉
    //subs.style.display="none";
   }

通过上面的例子使我更清楚的了解的dwr的作用.和spring的强大.为了实现树的显示也对javascript的编写有了进一步了解..在后面还会搞些更好的东西和结合学习到所有技术在学习同时与大家分享一下
下面是所有的源码..jar太大就不上传了.

 

原文来自:雨枫技术教程网 http://www.fengfly.com
原文网址:http://www.fengfly.com/plus/view-168040-1.html

 

分享到:
评论

相关推荐

    Spring+Dwr整合的项目(源码)

    **Spring+DWR整合项目详解** Spring框架是Java企业级应用开发中的主流框架,它提供了依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)等核心功能,极大地简化了开发流程。DWR(Direct Web Remoting)则是一...

    struts2+hibernate+spring+dwr整合

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

    Spring+DWR+ibatis+jQuery+easyUI的框架例子

    Spring+DWR+ibatis+jQuery+easyUI的框架例子. 完全开放源代码,免费学习与使用。 可以完成基本的后台主界面,报表查询,数据查询,增加,修改等功能。 如果你要做一些报表,后台功能利用这个a框架就可以很方便实现。

    Spring+Dwr+Hibernate整合项目

    总结,Spring+Dwr+Hibernate的整合项目提供了一种高效的方式,用于开发具备实时交互特性的Web应用。通过Spring的管理能力、Hibernate的ORM功能以及DWR的双向通信支持,开发者可以构建出高性能、易于维护的企业级应用...

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

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

    验证码 spring + dwr

    在这个"验证码 spring + dwr"的项目中,我们将探讨如何将这三者结合,构建一个高效且安全的验证码验证系统。 首先,Spring框架在这里的角色主要是负责服务层的构建和管理,以及与前端的交互。我们可以创建一个...

    spring+dwr.rar_dwr_dwr SPRING_spring dwr

    在IT领域,Spring框架和Direct Web Remoting (DWR)是两种重要的技术,它们在构建分布式Web应用程序中发挥着关键作用。本篇文章将详细讲解如何利用Spring与DWR结合,实现一个基本的功能:判断用户名是否已经存在于...

    struts2+spring+hibernate+dwr

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

    struts+hibernate+spring+dwr的案例

    Struts、Hibernate、Spring 和 Direct Web Remoting (DWR) 是四个在Java开发领域中广泛使用的开源框架。这个"struts+hibernate+spring+dwr的案例"旨在展示如何将这四个框架集成到一个应用中,以实现高效、灵活且功能...

    spring+dwr无刷新聊天室

    【Spring + DWR 无刷新聊天室】 Spring框架和Direct Web Remoting (DWR) 是构建Web应用程序的强大组合,尤其适用于实现动态、实时的交互功能,如无刷新聊天室。这个项目展示了如何利用这两个技术来创建一个无需刷新...

    struts+hibernate+spring+dwr集成开发文档pdf

    标题与描述中的关键词“struts+hibernate+spring+dwr集成开发文档”明确指出了本文档的主题,即如何在MyEclipse环境下集成这四种技术进行企业级应用开发。这四种技术分别是Struts,用于MVC框架实现视图层;Hibernate...

    spring+dwr+proxool连接池

    标题中的"spring+dwr+proxool连接池"指的是一个整合了Spring框架、Direct Web Remoting (DWR)和Proxool数据库连接池技术的应用程序。这个应用可能用于创建一个能够实时交互的Web应用程序,其中Spring提供了依赖注入...

    Spring+DWR 全注解版

    标题 "Spring+DWR 全注解版" 暗示了这个压缩包包含了一个使用Spring框架和Direct Web Remoting (DWR) 技术的示例应用,且该应用主要依赖注解来配置和管理组件。DWR是一种在Web应用程序中实现AJAX功能的开源库,它...

    spring+dwr+Extjs+sql2008的数组传递grid

    标题中的“spring+dwr+Extjs+sql2008的数组传递grid”是指一个集成应用,使用了Spring框架、Direct Web Remoting (DWR)技术、ExtJS前端框架以及SQL Server 2008数据库,实现了从后端服务器向前端Grid组件传递数据的...

    spring+hibernate+dwr+mysql实现二级联动

    ajax,spring,hibernate,dwr,实现二级联动

    疯狂Ajax讲义:Prototype/jQuery+DWR+Spring+Hibernate整合开发(part01)

    《疯狂Ajax讲义:Prototype/jQuery+DWR+Spring+Hibernate整合开发》是《基于J2EE的Ajax宝典》的第二版。《基于J2EE的Ajax宝典》面市近2年,作为Ajax领域最全面、实用的图书,一直深受读者的好评。全书主要分为三个...

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

    公文管理、申请审批、公告管理、会议管理、权限管理、个人办公、客户管理、人事等等。项目技术:Struts1.2 + Hibernate3.0 + Spring2 +DWR。java毕业设计 jsp毕业设计 ssh毕业设计

    maven3+spring3+mybatis3+dwr3实现的的异步刷新产品信息系统

    Maven3+spring3+mybatis3+dwr3+mysql5.5,请用Chrome浏览器,兼容性还未调试。 自己写的一个小系统,包含一个模块:产品模块。 基本这个模块包括的内容就比较多了,CRUD,无刷新查询,图片上传等, 其实也是整个...

    spring mvc+dwr环境配置

    在本篇配置手册中,我们将介绍如何在Spring MVC的环境下配置DWR环境,这包括web.xml的配置、创建dwr.xml文件、添加DWR的jar包、形成推送函数类以及在前台页面引入对应的JavaScript文件。 首先,web.xml的配置是整个...

Global site tag (gtag.js) - Google Analytics