dwr简化了ajax的应用,可以在浏览器页面的js中调用服务器端的java代码,很方便的实现了浏览器端向服务器端发送请求,并瞬间及时异步的更新服务端向客户端反馈的数据展示。具体步骤如下:
1. 下载dwr.jar,放在项目下的WEB-INFO/lib目录里,下载地址:dwr的官方网站:http://directwebremoting.org/dwr/。
2. 在web.xml文件中声明dwr,需要加入如下配置:
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
3. 在web.xml所在目录下添加dwr.xml的配置文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd">
<dwr>
<allow>
<create creator="new" javascript="JDate"> <!—在js中映射的对象-->
<param name="class" value="java.util.Date"/> <!—-java的类 --> </create>
<create creator="new" javascript="Demo">
<param name="class" value="feng.Test"/>
</create>
</allow>
</dwr>
4. 在页面js中加入如下代码:
<script type='text/javascript' src='dwr/interface/Demo.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
<script type='text/javascript'>
function dwrTest() {
Demo.ceshi(input, function(data) {//调用Test类中的ceshi方法,传参input,将返回的数据data执行回调函数function
//回调函数function的定义
。。。。。。。
});
}
</script>
然后可以在标签中可以随意触发事件dwrTest了。