dwr初探

一.dwr我们可能不陌生了,我就轻谈一下我的一些经验,以便以后的学习和总结
二.对于dwr我们可能有两种比较常见的用法:
1.原生态的dwr的远程方法调用
2.spring框架结合式的远程方法调用
三.两种方式的运用的剖析
1.原生态的dwr的远程方法调用:
第一步:在web.xml中导入dwr的核心引擎库code如下:
<servlet>
<servlet-name>dwrdemo1</servlet-name>
<servlet-class>[color=red]org.directwebremoting.servlet.DwrServlet[/color]</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dwrdemo1</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
第二步:在java code中编辑一个前端js要调用的后台方法:
public class Demo {
public String testDemo(String a)
{
return a+" wellcome!";
}

}
前两部工作都做好了,那么我们怎么在前端页面去调用这个Demo的testDemo方法呢?
接下来的工作就要仔细了。
第三部:我们虽然在web.xml中有声明dwr的核心引擎库,但是我们还是需要一个地方来声明我们要调用我们自己的Demo,这个最好声明方式就是在xml中去定义。一般我们自己定义的xml需要导入到web.xml,如果想偷懒一点的话,我们就不用把xml导入到web.xml中去,就是在自己定义的xml的名字就已dwr.xml的方式声明,那么在dwr function调用的时候dwr引擎就会自己去加载这个dwr.xml,当然dwr.xml是dwr引擎默认的一个xml,最基本的写法如下:
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
<allow>
<create creator="new" javascript="testDemo">
<param name="class" value="com.demo.Demo"/>
</create>
</allow>
</dwr>
第四步:虽然我们的前期工作都已经做好了,但是那在jsp页面我们怎么搞呢?,其实也很简单,我们只需要导入dwr的一个重要的js就可以了那就是engine.js,当然还有一个js我建议也可以导入到页面中去,就是util.js,这个js中提供了很用实用的工具(可以深探),已经我们刚刚声明的Demo,由于进过dwr的处理,他将我们声明的Demo解析成浏览器认识的js,所以当然也应该导入它喽!具体的code如下:
<%@ page language="java" pageEncoding="gbk"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<script type="text/javascript" src="dwr/interface/testDemo.js"></script>
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript">
function show()
{
var s=document.getElementById('t1').value;
testDemo.testDemo(s,backhand);

}
function backhand(a)
{
document.getElementById('sd').innerHTML=a;
}
</script>
<body>
<input type="text" id="t1">
<input type="button" value="点击" οnclick="show()">
</body>
<div>
<span id="sd"></span>
</div>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值