- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DWR(Direct Web Remoting)是一个开源的类库,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样.它包含两个主要的部分:允许JavaScript从WEB服务器上一个遵循了AJAX原则的Servlet(小应用程序)中获取数据.另外一方面一个JavaScript库可以帮助网站开发人员轻松地利用获取的数据来动态改变网页的内容.DWR采取了一个类似AJAX的新方法来动态生成基于JAVA类的JavaScript代码.这样WEB开发人员就可以在JavaScript里使用 Java代码就像它们是浏览器的本地代码(客户端代码)一样;但是Java代码运行在WEB服务器端而且可以自由访问WEB 服务器的资源.出于安全的理由,WEB开发者必须适当地配置哪些Java类可以安全的被外部使用.这个从JAVA到JavaScript的远程功能方法给DWR的用户带来非常像传统的RPC机制,就像RMI或者SOAP一样,而且拥有运行在WEB上但是不需要浏览器插件的好处.DWR不认为浏览器/WEB服务器协议是重要的,而更乐于保证编程界面的简单自然.对此最大的挑战就是把AJAX的异步特性和正常JAVA方法调用的同步 特性相结合.在异步模式下,结果数据在开始调用之后的一段时间之后才可以被异步访问获取到.DWR允许WEB开发人员传递一个回调函数,来异步处理 Java函数调用过程. 其配置如下:1.1、dwr.xml的配置dwrallowcreate creator=new javascript=testClass param name=class value=com.dwr.TestClass /include method=testMethod1//create/allow/dwrallow标签中包括可以暴露给javascript访问的东西。create标签中指定javascript中可以访问的java类,并定义DWR应当如何获得要进行远程的类的实例。 creator=new属性指定java类实例的生成方式,new意味着DWR应当调用类的默认构造函数来获得实例,其他的还有spring方式,通 过与IOC容器Spring进行集成来获得实例等等。javascript= testClass 属性指定javascript代码访问对象时使用的名称。param标签指定要公开给javascript的java类名。include标签指定要公开给javascript的方法。不指定的话就公开所有方法。exclude标签指定要防止被访问的方法。1.2、javascript中调用首先,引入javascript脚本script src=dwr/interface/ testClass.js/scriptscript src=dwr/engine.js/scriptscript src=dwr/util.js/script其中TestClass.js是dwr根据配置文件自动生成的,engine.js和util.js是dwr自带的脚本文件。其次,编写调用java方法的javascript函数Function callTestMethod1(){?? ??? testClass.testMethod1();}2、调用有简单返回值的java方法2.1、dwr.xml的配置配置同1.1dwrallowcreate creator=new javascript=testClass param name=class value=com.dwr.TestClass /include method=testMethod2//create/allow/dwr2.2、javascript中调用首先,引入javascript脚本其次,编写调用java方法的javascript函数和接收返回值的回调函数Function callTestMethod2(){?? ??? testClass.testMethod2(callBackFortestMethod2);}Function callBackFortestMethod2(data){?? //其中date接收方法的返回值?? //可以在这里对返回值进行处理和显示等等alert(the return value is + data);}其中callBackFortestMethod2是接收返回值的回调函数3、调用有简单参数的java方法3.1、dwr.xml的配置配置同1.1dwrallowcreate creator=new javascri
文档评论(0)