`

dwr和spring整合使用

    博客分类:
  • dwr
阅读更多

我是用spring与dwr融合的方式的来使用dwr的.不多说,就说使用步骤吧!
      第一步  导入dwr.jar (version: 2.0.5)
      第二步  配置web.xml文件
      第三步  配置dwr.xml
      第四步  编写js代码
      第五步  页面引用

1.略

2.略

3.配置dwr.xml

   前两步没什么好说的,我们来看第三步:

<dwr>
  <allow> 
         //一个create对应 java中一个类 
      //creator="spring" 表明由spring来创建,
         //子节点<param> 就必须是 name="beanName" 
        //value="***" 此处的***代表你
     //spring的配置文件也就是applicationContext.xml文件中
     //声明 bean 的id的值
     //而 create标签的javascript属性的值就是用它来代表bean中的对象     

   <create javascript="userService"  creator="spring">
        <param name="beanName" value="userService"></param>
       
        <!--  指定哪些文件可以通过dwr方式调用   -->
        <include method="checkUserName"  />   
        <include method="checkEmail"/>
    </create>
  </allow>
</dwr>

 

4.编写js代码(checkUser.js文件)

//定义一个全局变量,方便给页面中某个<span>标签动态的加上html代码
//你可以不理它的
var span_id ; 
function checkUserNameForExist(userName,span_info){
    span_id = span_info ;
    return  userService.checkUserName(userName,checkUserNameForExistBack);
    //此处的userService对应第三步中create 标签的javascript="userService",
    //而checkUserName的方法就是java中的方法,也即是userService bean中的checkUserName
    //当然参数 userName的获取你自己搞定了,通过document.getElementById("***").value等等
   //然后,自己再传入这个方法中
}
//此方法的参数是 userService这个bean的checkUserName方法的返回值
//我返回的是boolean类型
//也可以是 int String foalt double int[] string[] float[] double[] java.util.Date list set等

function checkUserNameForExistBack(varbool){ 
//这个方法是通过dwr方法调用后回调的方法
    if(varbool){ //不存在了
        document.getElementById(span_id).innerHTML="<font color='red'>此用户不存在</font>";
        return false ;
    }else{
        document.getElementById(span_id).innerHTML="";
        return true ;
    }
}

 

   关于回调的说明:

<script type="text/javascript">
    function doMethod(){
        //调用方法:若公开的类是AAA,公开的AAA里的方法是bbb([参数]);
       //回调函数callBack()
        AAA.bbb([参数],callBack);
    }
    
    //data是后台返回的值,名字自取,也可省略,因为JS允许
    function callBack(data) {
       //处理方法……;
       //如果callBack()没有写明返回值,可以通过argments[0]拿到
    }
</script>


//其实我们调用AAA.bbb([参数],callBack),就是做了以下这一步:
//(下面部分代码是包装好的,不在前台,所以即使你没有创建html或者jsp来调 
//用,也可以通过localhost:8080/工程名/dwr 来看到你暴露的java类进行测试)
    function AAA() { };
    AAA.bbb = function([参数], callback){
        DWREngine._execute('/dwr/dwr', 'AAA', 'bbb', [参数], callback);
    }

//通过在dwr.xml暴露的方法得到js里的方法,当我们调用AAA.bbb时候再通
//过/dwr/dwr转到DWRServlet中去用JAVA里的AAA.bbb方法,然后返回值到
//callback中(中间经过dwr.xml的convert)
比如: var getMav = function() {
   ecTypeService.editEcType(id, method, showModelView);
  }
  
 var showModelView = function(mav) {
  var model = mav.model;
  win = new Ext.Window( {

   border :true,
   layout :'fit' });  //这里的ecTypeService为spring管理的service,showModelView为回调方法,mav为回调返回的值

 

 

5.页面引用

一定记得引入以下四个文件

<script type="text/javascript" src="/dwr/engine.js"></script>
<script type="text/javascript" src="/dwr/util.js"></script>
 <script type="text/javascript" src="/dwr/interface/userService.js"></script>
 <script src="/js/checkUser.js"  type="text/javascript"></script>

 

然后就可以调用userService.js中的类

<script>
    function check_name(o,div_id){
        ...
    }
   
    function checkDescription(description,div_id){
        ...
    }
   
    function check_submit(f){
        var str="";
        if(!check_name(f.boardName,"boardName_info")){
            str=str+"false|";
        }
        var boardMaster = f.boardMaster.value ;
       
        //这里的 checkUserNameForExist 就是了
        if(!checkUserNameForExist(boardMaster,"boardMaster_info")){
            str=str+"false|";
        }
       
        var oEditor = FCKeditorAPI.GetInstance("boardDescription");
           var boardDescription=oEditor.GetXHTML(true);
       
        if(!checkDescription(boardDescription,"boardDescription_info")){
            str=str+"false|";
        }
       
        if(str==""){
            return true;
        }else{
            return false;
        }
    }
</script>

 

分享到:
评论

相关推荐

    DWR与SPRING 集成

    标题 "DWR与SPRING 集成" 涉及到的是两个在Web开发中常用的开源框架——Direct Web Remoting (DWR) 和 Spring。DWR允许在浏览器和服务器之间进行实时、异步的数据交换,而Spring是Java企业级应用的全面解决方案,...

    dwr与spring整合

    将DWR与Spring整合,可以利用DWR的异步通信能力,结合Spring的强大管理功能,构建高效、灵活的Web应用。 **整合过程** 1. **引入依赖**:首先,我们需要在项目中引入DWR和Spring的相关jar包。对于Maven项目,可以...

    dwr与spring集成的方式

    4. **简化开发**:Spring和DWR的集成可以减少重复代码,简化开发流程。 #### 三、DWR与Spring集成的方式 ##### 第一种方式:在dwr.xml中指定Spring Bean 这种方式是在DWR的配置文件dwr.xml中指定业务对象的创建...

    dwr+spring集成配置

    将DWR与Spring集成,可以充分利用Spring的管理能力,简化DWR的配置和增强应用的可维护性。 ### 集成步骤 1. **引入依赖** 在项目的`pom.xml`文件中添加DWR和Spring的依赖。确保版本兼容,通常选择最新稳定版本。 ...

    dwr+spring 注解方式

    将DWR与Spring整合,可以利用Spring的强大功能来管理和配置DWR组件,同时保持前后端交互的高效性。 在使用DWR和Spring结合时,注解方式的引入极大地简化了配置过程。下面将详细介绍如何通过注解实现DWR和Spring的...

    dwr和spring集成简单例子

    集成完成后,DWR和Spring的结合将使得我们的Web应用具有实时交互性,而Spring的依赖注入和管理能力则帮助我们保持代码的整洁和可维护性。 总之,DWR和Spring的集成提供了一种有效的方法,通过简单的配置和编码,就...

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

    《疯狂Ajax讲义:Prototype/jQuery+DWR+Spring+Hibernate整合开发》是疯狂Java体系丛书之一,前8章基本以XHTML、JavaScript和DOM编程为主,无须任何基础即可阅读;第9章以后的内容则需要掌握Spring、Hibernate等Java ...

    DWR与SPRING,DWR与STRUTS2的整合

    1. **配置DWR Spring集成**:在Spring配置文件中定义DWR相关的bean,如`DWRConfig`和`SpringContextUtil`,以便让DWR能够访问Spring的bean。 2. **Spring托管的Java类暴露给JavaScript**:通过Spring的`@Service`或...

    dwr和spring和struts2整合

    4. **整合DWR和Spring**:为了让DWR能够找到Spring管理的Bean,需要配置DWR-Spring集成。这可以通过在dwr.xml中添加`&lt;dwr:annotation-config&gt;`标签,以及在web.xml中配置DWR的Spring监听器来实现。 5. **编写前端...

    DWR整合Spring MVC

    本文将深入探讨DWR和Spring MVC的集成过程以及相关知识点。 **DWR(Direct Web Remoting)**是一种开源的JavaScript库,它允许Web应用程序在客户端JavaScript和服务器端Java之间进行双向通信。DWR通过动态生成...

    使用dwr+spring实现消息推送

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

    dwr2.0 spring 3.0 整合示例

    在这个"DWR 2.0 Spring 3.0 整合示例"中,我们将探讨如何将DWR与Spring框架集成,以实现高效的前后端交互。整合DWR和Spring的主要目标是利用Spring的管理能力来处理DWR的bean,同时利用DWR的动态JavaScript生成能力...

    ajax dwr+spring整合

    在"dwrspring2"这个示例项目中,可能包含了配置文件、Java源代码和Web页面等资源。你可以看到如何在`dwr.xml`中配置Spring Bean的引用,以及在JavaScript中如何使用DWR调用这些Bean的方法。通过查看项目中的`index....

    dwr+spring实例

    要将DWR与Spring整合,我们通常会使用Spring的`DwrController`或者自定义一个Spring MVC控制器来处理DWR请求。此外,我们还需要在Spring的配置文件中声明DWR的相关bean,如`DwrConfig`,并将其与其他Spring服务(如...

    DWR+SPRING整合

    #### 二、DWR与Spring整合配置 在进行DWR与Spring的整合时,首先需要在DWR的配置文件dwr.xml中指定创建对象的方式和参数。以下是一个示例: ```xml &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD ...

    DWR+Spring整合案例

    - **集成 DWR-Spring**: 使用 `dwr-spring` 模块,它提供了 Spring-aware 的 `DWRContext` 实现,使得 DWR 可以识别和利用 Spring 容器中的 Bean。 - **配置 Servlet 容器**: 在 `web.xml` 文件中配置 DWR 的 `...

    DWR示例与spring集成

    - **Spring集成示例**:说明如何配置DWR与Spring的集成,以及如何在JavaScript中调用Spring的Bean。 通过理解并实践这些示例,开发者可以更好地掌握DWR的使用,并将其应用于实际的Web应用中,实现高效、便捷的前后...

    DWR结合spring例子(可用)

    将DWR与Spring结合使用,可以构建出更高效、更灵活的Web应用。 在这个例子中,我们将会探讨如何将DWR与Spring集成,创建一个可运行的示例。首先,我们需要在项目中添加DWR和Spring的相关依赖。这通常通过Maven或...

    dwr+spring+hibernate模板.zip

    DWR、Spring和Hibernate整合的关键在于: - 配置:首先,需要在Spring配置文件中声明DWR的相关bean,包括DWR引擎、配置信息等。接着,配置Hibernate的数据源、SessionFactory,并将SessionFactory注入到需要进行...

    ext-dwr-spring集成Demo

    本示例"ext-dwr-spring集成Demo"就是一种将三个重要技术组件——EXT、Direct Web Remoting (DWR) 和Spring框架融合的实践。EXT是一个强大的JavaScript库,用于构建富客户端BS(Browser-Server)架构的应用;DWR则...

Global site tag (gtag.js) - Google Analytics