dwr的使用

来源:互联网 发布:程序员计算器 编辑:程序博客网 时间:2024/06/05 11:34

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(                            "张三",18,                            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中写的代码。

原创粉丝点击