加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

dwr的使用

发布时间:2020-12-15 22:09:32 所属栏目:百科 来源:网络整理
导读:DWR是一个Java库,它使Java在服务器和JavaScript在浏览器中进行互动,并尽可能简单地调用对方—官方解释。 DWR版本3.0.rc2是最近的开发版本。 DWR版本2.0.10是当前的稳定版本。 下面实例均采用2.0.1稳定版本。下载 Dwr很简单,就是在js中如何调用java代码。

DWR是一个Java库,它使Java在服务器和JavaScript在浏览器中进行互动,并尽可能简单地调用对方—官方解释。

DWR版本3.0.rc2是最近的开发版本。 DWR版本2.0.10是当前的稳定版本。

下面实例均采用2.0.1稳定版本。下载

Dwr很简单,就是在js中如何调用java代码。下面看一下dwr的配置过程。

第一步:拷贝dwr的jar包,只有一个dwr的jar包。

第二步:在web.xml中添加如下配置

<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>
    <init-param> 
        <param-name>crossDomainSessionSecurity</param-name> 
        <param-value>false</param-value> 
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>  


上面的参数crossDomainSessionSecurity允许进行跨域的访问,默认是false的,因为这样的话会导致一些风险。因为在测试过程中一直提示session error。加上此配置才节能解决问题。

第三步:编写java类和jsp页面

Java类:

package com.tgb.dwrtest;
 
public class Test {
         public String hello(String name,intage){
                   return "你好,你的姓名是【"+name+"】,年龄是:【"+age+"】";
         }
}


Jsp页面:

<%@ page language="java"contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE htmlPUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"content="text/html; charset=GB18030">
<title>Inserttitle here</title>
<script type="text/javascript"src="dwr/engine.js"></script>
<script type="text/javascript"src="dwr/util.js"></script>
<script type="text/javascript"src="dwr/interface/ test.js"></script>
<script type="text/javascript">
/* functiontest1(){
         T2.hello("张三",18,function(data){
                            alert(data);
                   }
         );
} */
function test1(){
         T2.hello(
                            "张三",function(data){
                                     alert(data);
                            }
                   );
}
</script>
</head>
<body>
<input type="button"value="测试" onclick="test1()">
</body>
</html>

上面引入的三个js文件前两个是在dwr的jar包中,所以不用拷贝js文件到webroot下即可使用,第三个test.js则是我们配置的js文件。即在dwr.xml文件配置。

<?xml version="1.0"encoding="UTF-8"?>
<!DOCTYPE dwrPUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">
<dwr>
  <allow>
    <create creator="new" javascript="test">
      <param name="class" value="com.bjsxt.dwrtest.Test"/>
    </create>
  </allow>
</dwr>

配置好后即可在js中调用java中写的代码。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读