DWR是一个Java开源库,帮助你实现Ajax网站。
它可以让你在浏览器中的Javascript代码调用Web服务器上的Java,就像在Java代码就在浏览器中一样。
DWR主要包括两部分:
- 在服务器上运行的Servlet来处理请求并把结果返回浏览器。
- 运行在浏览器上的Javascript,可以发送请求,并动态改变页面。
DWR会根据你的Java类动态的生成Javascript代码。这些代码的魔力是让你感觉整个Ajax调用都是在浏览器上发生的,但事实上是服务器执行了这些代码,DWR负责数据的传递和转换。
这种Java和Javascript之间的远程调用会让DWR用户感觉像是曾经习惯使用的RMI或SOAP的RPC机制。而且这一过程还不需要额外的浏览器插件。
Java是同步的,而Ajax是异步的。所以当你调用一个远程方法时,你要给DWR一个回调函数,当数据从网络上回来时,DWR会调用这个函数。

这个图表现了DWR是如何在onclick事件中改变下拉列表的内容的。
DWR动态为服务端AjaxService类(Java)生成了一个相应的客户端AjaxService类(Javascript)。这个类被 eventHandler调用。DWR就会去处理整个远程调用的细节,包括在Javascript和Java之间转换参数和返回值。然后在这里例子中,它 会执行你提供的回调函数(populateList),这个函数再利用DWR提供的工具函数来更改页面内容。
DWR帮你生产出具有很好交互性的网站,它提供的一些Javascript库帮你处理DHTML,也提供了一些例子做为参考。
DWR 是一个 Java 开源库,它简化了 Ajax 应用程序的开发。通过在浏览器端生成对应的 JavaScript 代理类,使得可以直接调用服务器端的 Java 方法,实现了远程过程调用的功能。这种方式不仅避免了复杂的 XMLHttpRequest 编程,还提供了丰富的工具函数来处理 DHTML,极大地提高了 Web 应用的交互性和用户体验。
177

被折叠的 条评论
为什么被折叠?



