服务器端ajax框架--------DWR实践总结

来源:互联网 发布:js重载div 编辑:程序博客网 时间:2024/04/30 15:51

 

              由于实际的需要本已经规避很久的ajax,不得不拿上手头,不过学了之后ajax,也改变了对ajax的一些看法.....

     相比许多J2EE框架而言,DWR就显的相对简单了许多,DWR实现的主要方式是在客户端调用服务端函数,返回各种类型包括对象,因此在DWR官方网站上可以看到"DWR is Easy Ajax for Java",下面来看看我个人看了文档后对DWR的理解(不同意见的朋友可以提出来):

           1,ajax是利用库动态生成客户端javascript脚本,由于是从java-->javascript,因此要配很多东西(dwr.xml里面的).包括create(调用时要事例化的类名),convert(把java类型转化为javascript类型),同时当有数组需要转化时需要借助jdk1.5的泛化来做配置,具体的配置由signatrues标签中完成,同时默认的convert包括了基本的java数据类型,因此基本数据类型不需要转化.

   2,从上面我们可以知道,从逻辑上讲,客户端javascript远程地调用了服务器端方法,通过javascript的回调函数,可以很容易得把结果传回来.

   3,从上面的内容我们知道,有可能调用的函数需要访问数据库,当在J2EE框架环境下,如Struts(Webwork),Spring,Hibernate(Ibatis)等组合环境下时,需要考虑到框架的联合使用,例如:需要调用spring中的bean,那么就得进行ApplicationContext调用,在DWR1中就已经可以和Spring框架联合使用,主要通过create创建调用事例,不过要用"spring"方式而非"new "方式创建.

   4,总体来说配置的步骤有五步:

                                                               (1)需在web应用中加dwr.jar包

                (2) 由于要辨别客户端请求等需要,因此需要配置servlet

                                                              (3)写功能实现类

                                                              (4)配置dwr.xml

                                                              (5)同时要在客户端调用js,因此要加js包(至少有engine包和动态生成的js包),对方法调用等

   5,一般注意事项和配置效验:(1) dwr.xml位于web-inf下,engine路径必须是:/项目名/dwr/engine.js,动态生成的js路径:

/项目名/dwr/interface/[dwr.xml配置的客户端应用名].js

                                                            (2)验证.在确认业务逻辑没问题时:输入地址:http://127.0.0.1:8080/[项目名]/dwr  就可以看到你配置的creator名称,点击连接进入其子目录,可以在页面上输入具体参数来严整客户端调用的效果.

原创粉丝点击