`
huang5787826
  • 浏览: 46842 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
文章分类
社区版块
存档分类
最新评论

spring 整合dwr 值得收藏

阅读更多
为什么非要利用Spring来整合DWR呢?
个人见解:
      在一个项目中,尤其是利用SSH(Struts+Hibernate+Spring)整合开发的时候通常是利用Spring来进行管理的,因此即使在使用AJAX技术的项目中仍希望由Spring来进行整体的管理整合工作,这样的统一管理思想很喜欢。
     dwr的设计构思很是巧妙。
    第一、把java类转化为javascript类由dwr自动完成,只需简单的配置。
    第二、应用起来极其简单。开发者不要该服务器代码就可以集成。
    第三、容易测试。和webwork一样,隐藏的http协议。
    第四、及强扩展性。例如与spring集成,只需修改一点代码。
    第五、性能。就我与jason,等简单比较,dwr性能可能是最好的。
    第六、自动把java对象转化为javascript对象,并且及易扩展。
下面介绍Spring整合DWR的步骤:
      步骤一:
         下载Spring2.x(http://www.springframework.org)以及DWR2.0(http://getahead.org/dwr),然后将jar包导入到现有的工程下(/WEB-INF/lib/)。(因为DWR2.0中包含DwrSpringServlet类)
         步骤二:
         修改web.xml文件:
<!-- DWR servlet 配置 --> 
<servlet> 
    <servlet-name>dwr-invoker</servlet-name> 
    <servlet-class> 
        org.directwebremoting.spring.DwrSpringServlet  
    </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监听器 --> 
<listener> 
    <listener-class> 
       org.springframework.web.context.ContextLoaderListener  
    </listener-class> 
</listener> 

这样配置可能会存在问题(主要取决与你IDE环境设置),因为侦听器会在/WEB-INF/下寻找applicationContext.xml文件,所以需要一点点小小的改动:

假设我的applicationContext.xml文件放在/src/com/下面,我们需要在web.xml文件中添加下面的语句进行说明。

<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:/com/applicationContext.xml</param-value>
</context-param>

说明:
org.directwebremoting.spring.DwrSpringServlet这个类是dwr专门为整合spring提供的一个servlet,加入这个之后,dwr的配置就可以写入到spring的配置文件applicationContext.xml中,省掉了dwr.xml

这样就ok了。我们继续。

步骤三:

编写java类(用于通过AJAX实现的功能)。例如:验证码的实现(我的Blog验证码java实现的日志中有相关代码,请参考)。

步骤四:

配置applicationContext.xml文件

因为我门要在Spring配置文件中使用DWR的标签,所以要引入DWR标签的定义。

<beans 

    xmlns="http://www.springframework.org/schema/beans" 

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

    xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr" 

    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd  

     http://www.directwebremoting.org/schema/spring-dwr http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd">

<!-- DWR 配置开始 -->  

    <dwr:configuration></dwr:configuration><!-- 必须要configuration --> 

    <dwr:controller id="dwrController" debug="true" /> 

    <!-- DWR 配置结束 --> 

        

     <!-- spring bean配置 --> 

     <bean id="userService" class="test.bcndyl.service.impl.UserServiceImpl"> 

     </bean> 

       

     <bean id="myCode" class="dwr.MyCode"> 

        <!-- 定义调用的js文件 --> 

        <dwr:remote javascript="myCode"></dwr:remote> 

    </bean> 

    <!-- end spring bean配置 --> 

</beans>

在这里本人遇到过这样的问题:

如果这样写:

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd  

     http://www.directwebremoting.org/schema/spring-dwr http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd"

在<dwr:configuration></dwr:configuration>和<dwr:remote javascript="myCode"></dwr:remote> 处会有错误的提示。将

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd  改为

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd,错误就消失了  。

步骤五:

在需要AJAX的JSP页面中添加AJAX相关:

dwr/engine.js、dwr/util.js、dwr/interface/myCode.js

接下来的编码工作不用我说了!

DWR大大简化了AJAX的编码,很实用的东西啊!

分享到:
评论

相关推荐

    spring2 整合 Dwr(把DWR的配置写到Spring的配置文件)

    **Spring2 整合 DWR:将DWR配置融入Spring配置文件** Direct Web Remoting (DWR) 是一个开源的JavaScript库,它允许在浏览器和服务器之间进行实时、安全的双向通信,使得Web应用程序能够拥有类似桌面应用的交互性。...

    spring整合dwr

    在整合Spring和Direct Web Remoting (DWR)框架时,主要目的是实现在Web应用程序中创建一个可交互的、实时的用户界面,通过Ajax技术在客户端和服务器之间进行数据交换。以下将详细介绍整合过程中的关键步骤。 1. **...

    Spring整合dwr实例+dwr中文开发文档

    **Spring 整合 DWR 实例详解** Spring 框架和 Direct Web Remoting (DWR) 是两个在Web开发中广泛使用的工具。Spring 提供了一个全面的编程和配置模型,用于构建现代Java应用程序,而DWR则允许在浏览器和服务器之间...

    spring整合dwr反推技术

    Spring整合Direct Web Remoting (DWR)是一种技术,它允许Web应用程序实现实时的、双向的JavaScript和服务器端Java对象之间的通信。这种技术的核心在于反推(Reverse Ajax),即服务器主动向客户端推送数据,而不仅仅...

    Spring整合DWR comet 实现无刷新 多人聊天室代码整理

    Spring整合DWR(Direct Web Remoting)和Comet技术,是一种高效的实现Web应用程序实时通信的解决方案,特别适用于创建如多人聊天室这样的实时交互应用。在这个项目中,Spring作为后端框架,负责业务逻辑处理和控制...

    dwr与spring整合

    **DWR(Direct Web Remoting)与Spring框架的整合** DWR是一款开源的Java库,它允许在浏览器和服务器之间进行动态、实时的双向通信,实现了JavaScript与Java之间的远程调用。Spring则是一个广泛使用的Java企业级...

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

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

    DWR与SPRING,DWR与STRUTS2的整合

    提供的文档“dwr与spring.doc”和“dwr与struts2.doc”可能详细阐述了整合过程和最佳实践,而“一个小例子.txt”可能包含了一个实际整合示例,帮助读者更好地理解整合步骤和实现方式。学习并掌握这些知识对于提升...

    Spring与DWR结合

    通过以上步骤,我们成功地整合了Spring和DWR,使得前端JavaScript可以直接调用后端Spring Bean的方法,实现了前后端的高效交互。这种方式在开发富互联网应用(RIA)时非常有用,因为它降低了网络通信的复杂性,提升...

    spring与dwr的整合

    **Spring与DWR整合详解** 在Java Web开发中,Spring框架和Direct Web Remoting (DWR) 是两个非常重要的工具。Spring提供了强大的依赖注入、事务管理以及AOP(面向切面编程)等功能,而DWR则允许在浏览器端直接调用...

    spring使用annotation整合dwr笔记

    ### Spring使用Annotation整合DWR知识点解析 #### 一、概览 在现代Web开发中,Direct Web Remoting(简称DWR)是一种简化Ajax应用开发的技术,它允许JavaScript直接调用服务器端的Java方法,而无需编写复杂的XML...

    Spring整合DWR comet 实现无刷新 多人聊天室

    Spring整合DWR(Direct Web Remoting)以实现Comet技术,是构建实时、无刷新的多人聊天室的一种高效方法。这种技术允许服务器向客户端推送数据,而无需客户端频繁发起请求,从而大大提升了用户体验。下面我们将深入...

    使用dwr+spring实现消息推送

    在本教程中,我们将探讨如何利用Direct Web Remoting (DWR) 和Spring框架来实现这样的功能。 DWR是一个开源Java库,它允许Web应用程序在浏览器和服务器之间进行实时的、异步的通信,类似于Ajax的功能,但更加强大。...

    Spring+Dwr+Hibernate整合项目

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

    dwr2.0 spring 3.0 整合示例

    整合DWR和Spring的主要目标是利用Spring的管理能力来处理DWR的bean,同时利用DWR的动态JavaScript生成能力来简化客户端的Ajax调用。 1. **DWR的配置**: - 在DWR 2.0中,我们需要在Web应用的`WEB-INF/dwr.xml`配置...

    spring+dwr.rar_dwr_dwr SPRING_spring dwr

    在"spring+dwr.rar_dwr_dwr SPRING_spring dwr"这个项目中,我们将看到如何整合这两个工具,以实现一个简单的功能:验证用户名是否存在。这个功能通常用于注册或登录页面,防止用户选择已被占用的用户名。 步骤如下...

    spring-dwr-2.0.xsd

    spring-dwr-2.0.xsd spring 与 DWR进行配置

    spring与dwr整合(简单)

    Spring 和 Direct Web Remoting (DWR) 的整合是将 Spring 框架的依赖注入和控制反转特性与 DWR 的动态 Web 接口相结合,从而实现客户端 JavaScript 和服务器端 Java 代码之间的无缝交互。这种整合使得开发人员可以...

    struts2+hibernate+spring+dwr整合

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

    Spring 2中整合DWR 2

    ### Spring 2中整合DWR 2:详细解析与实践 #### 一、Spring与DWR简介 在探讨如何在Spring 2框架中整合DWR 2之前,我们首先需要了解这两个技术的基本概念。 - **Spring框架**:Spring是目前Java开发中最流行的开源...

Global site tag (gtag.js) - Google Analytics