DWR(Direct Web Remoting)是一个开源的类库,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样.
DWR采取了一个类似AJAX的新方法来动态生成基于JAVA类的JavaScript代码.这样WEB开发人员就可以在JavaScript里使用Java代码就像它们是浏览器的本地代码(客户端代码)一样;但是Java代码运行在WEB服务器端而且可以自由访问WEB 服务器的资源.出于安全的理由,WEB开发者必须适当地配置哪些Java类可以安全的被外部使用.
要使用dwr要先下载http://getahead.org/dwr/
下载内容
DownloadVersion 2.0.3Size
JAR File: dwr.jar(489Kb)
WAR File:dwr.war(2.14Mb)
Sources:dwr-2.0.3-src.zip (20.78Mb)
首先看下工程里面:
多了dwr.jar(dwr jar包),dwr.xml(dwr的配置文件),dwr20.dtd(在编辑xml配置文件时,提供自动提示功能),其实web.xml配置文件也配置了dwr的servlet,来看下:
至于这个url为什么还要用"/dwr/*"还不是很清楚,我想的是如果客户端有请求过来经过dwr的都被指定的servler处理(个人理解)。
在来看下dwr.xml的配置:
红线框的是关于dwr智能提示的配置,里面蓝线框的是上面提到的dwr20.dtd的路径,如果路径或者文件名不对,那么前面就会出现警告:
如果出错了也无所谓,只不过是不能智能提示,如果你能把这写节点记住的话,那就不需要了,否则就把dwr20.dtd拷贝到与dwr.xml相同的目录下。
在看重要的部分dwr的节点:
<allow>标签中包括可以暴露给javascript访问的东西。
<create>标签中指定javascript中可以访问的java类,并定义DWR应当如何获得要进行远程的类的实例。creator="new"属性指定java类实例的生成方式,new意味着DWR应当调用类的默认构造函数来获得实例,其他的还有spring方式,通过与IOC容器Spring进行集成来获得实例等等。javascript="sayHello"属性指定javascript代码访问对象时使用的名称。
<param>name这里一般用class指一个类,value指类的全名,包括包名。
好了配置文件我们算做好了,在来看看jsp中在JavaScript中所做的配置。
第一个是dwr的引擎js文件,第二个是用户自己要访问java的类的js文件。
在来看看JavaScript调用java类的方法
注意这里的sayHello还有上面配置的sayHello.js(文件名)要和dwr.xml中配置JavaScript的名字要相同,否则就报错。
下来看下java类中的方法。
在上面的JavaScript中有人就想问,为什么调用Hello的方法时要传入一个函数。来说下,第一个是java方法的参数,第二个方法是回调函数,这个函数是负责接受JavaScript调用java类后返回的结果。
到这里一个简单的dwr框架就搞完了,来先看下是否成功,启动jsp的服务器,然后下图:
点击查看文件,先把里面所有的东西删除了,然后浏览你的jsp页面,就出出现一下2个文件
就是我们刚才配置的两个js文件,如果客户端通过JavaScript调用sayHello.Hello的话,那么就会由sayHello.js处理,然后转交给engine引擎,之后由引擎向服务器请求。
来看下效果,
很好,看来运行很好,但是发现个问题,我刚才在配置文件里配置的com.dwr.sayHello中所有的方法我们都可以访问的嘛?其实并不是这样的,要是不设置的话,就默认允许调用所有的方法,要是想要指定的方法允许访问,那么就要在dwr.xml中配置了。来看:
好了,具体配置就是这样的。到此为止才是菜鸟入门,呵呵(我也是菜鸟,刚学的。)
相关推荐
dwr 框架dwr 框架dwr 框架dwr 框架dwr 框架dwr 框架
NULL 博文链接:https://finally-m.iteye.com/blog/362477
DWR框架的实现DWR框架的实现DWR框架的实现DWR框架的实现DWR框架的实现
Ajax的简述 传统web开发模式与ajax开发模式的不同 Ajax的开发与案例 Dwr框架的简介 Dwr框架的应用与案例 Dwr 框架与Struts,Spring框架的结合
SSH与DWR框架整合SSH与DWR框架整合SSH与DWR框架整合
DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.DWR快速配置入门.
DWR(Direct Web Remoting)是一个开源的类库,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样
dwr框架学习,入门hello world程序。
ajax的DWR框架入门例子,包含源代码和调试成功的例子
dwr框架入门学习文档,利于刚开始接触dwr的人员
基于dwr框架的web应用的设计与使用,是介绍dwr入门的不错的文章。
dwr非常有名的ajax框架,内部有一个试例war包和必须的jar包
dwr框架的源文件dwr框架的源文件dwr框架的源文件dwr框架的源文件
框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr 框架结构dwr
DWR 框架使用手册DWR 框架使用手册DWR 框架使用手册DWR 框架使用手册DWR 框架使用手册DWR 框架使用手册
DWR框架入门的小案例,类似于java中的helloword,上手简单容易
不错的Aja与DWR框架入门文档.doc
是自己学习期间DWR框架的简单的一些实例和操作。里面有三层写的异步刷新分页 还有DWR操作的14个小实例,以及提高能力的DWR的API和API的技术文档,贡献大家,希望大家能够用的上,也欢迎学习交流,里面有本人的QQ。
(参考:http://www.cnblogs.com/cyjch/archive/2012/02/16/2353758.html) DWR框架简单Demo,主要是用户注册的例子。 感谢原博主的分享!(附上我测试成功的Demo)
包含Ajax高级程序设计和DWR框架的资料