dwr基础配置

本文详细介绍DWR在Web项目中的配置步骤与实践方法,包括web.xml中的DWR Servlet配置、dwr.xml文件中创建JS对象及转换器的定义,以及前端JS调用示例。通过具体代码展示如何实现Java对象方法的远程调用。
摘要由CSDN通过智能技术生成

1.web.xml

 1 <servlet>
 2     <servlet-name>dwr-invoker</servlet-name>
 3     <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
 4     <init-param>
 5         <param-name>debug</param-name>
 6         <param-value>true</param-value>
 7     </init-param>
 8 </servlet>
 9 
10 <servlet-mapping>
11     <servlet-name>dwr-invoker</servlet-name>
12     <url-pattern>/dwr/*</url-pattern>
13 </servlet-mapping>

2.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>
    <!-- 建立JS对象,将目标对象的方法转换成JS对象的方法 -->
    <create javascript="helloSrv" creator="new">
        <param name="class" value="services.HelloServices"></param>
    </create>
    <!-- 从Spring中获取Java对象 -->
    <create javascript="deptSrv" creator="spring">
        <param name="beanName" value="deptServices"></param>
        <!-- 禁止执行 -->
        <exclude method="deleteDept" />
    </create>
    <create javascript="loginSrv" creator="spring">
        <param name="beanName" value="loginSrv"></param>
    </create>
    <!-- 指定针对于特定对象的转换器 -->
    <convert match="entity.*" converter="bean"></convert>
    <convert match="java.lang.Throwable" converter="bean">
        <param name="include" value="message"></param>
    </convert>
</allow>
</dwr>

3.前端js代码

<!-- 记得引入js,测试地址: http://localhost:8083/dwrweb/dwr/ -->
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/interface/helloSrv.js"></script>
<script type="text/javascript" src="dwr/util.js"></script>
<script type="text/javascript">
    function hello(){
        //方法一
        //返回处理后的结果信息
        /*var fn = function(result){
         $("msg").innerHTML = result;
         }
         helloSrv.sayHello($("name").value, fn);*/

        //方法二
        helloSrv.sayHello($("name").value, function(result){
            $("msg").innerHTML=result;
        });

        //方法三
        //使用如下的好处为:不用导入如上三个js        
        //第一个参数: dwr访问路径,在web.xml中配置,如: <url-pattern>/dwr/*</url-pattern>        
        //第二个参数: dwr与java服务器通信变量,在dwr.xml中声明        
        //第三个参数: 服务器方法名
        //第四个参数: 页面请求参数,即服务器方法名得参数
        //第五个参数: 回调函数        
        //dwr.engine._execute("dwr", 'helloSrv', 'sayHello', $("name").value, fn);

    }
</script>

转载于:https://www.cnblogs.com/y-l-h/p/7993110.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值