JavaScript调用java方法——dwr步骤.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
### JavaScript调用Java方法——DWR使用步骤详解 #### 一、DWR简介 DWR (Direct Web Remoting) 是一种使服务器端的Java对象能够被客户端JavaScript代码直接调用的技术。通过这种方式,开发人员可以轻松地实现客户端与服务器端之间的交互,而无需编写复杂的Ajax代码。 #### 二、环境搭建 1. **下载并安装DWR**: - 需要下载DWR的jar文件,并将其放置于项目的`WebRoot/WEB-INF/lib`目录下。 2. **配置web.xml**: - 在`web.xml`中添加如下配置来注册DWR的servlet: ```xml <servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class>uk.ltd.getahead.dwr.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> ``` - 这段配置指定了DWR servlet的名称、类以及调试模式,并将所有以`/dwr/`开头的URL映射到此servlet上。 3. **创建dwr.xml**: - 在`WEB-INF`目录下新建一个名为`dwr.xml`的文件,并添加以下内容: ```xml <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://getahead.org/dwr/dwr10.dtd"> <dwr> <allow> <create creator="new" javascript="Demo"> <param name="class" value="your.java.Bean"/> </create> </allow> </dwr> ``` - 上述配置指定了允许从JavaScript端访问的Java类及其相关的属性。 - `<create>`标签定义了创建Java对象的方式,`creator="new"`表示使用`new`关键字创建对象;`javascript="Demo"`则指定了客户端调用时使用的名称。 - `<param name="class" value="your.java.Bean"/>`指定该Java类的全限定名。 #### 三、Java类与方法的实现 1. **创建Java类**: - 创建一个简单的Java类,例如`Hello.java`: ```java package com.hello; public class Hello { public String hello(String name) { return "囉!" + name + "!您的第一個DWR!"; } } ``` - 这个类包含了一个公开的方法`hello()`,它接受一个字符串参数并返回一个问候消息。 #### 四、JSP页面的编写 1. **创建JSP文件**: - 在项目中创建一个JSP文件,例如`hello.jsp`。 - 在JSP文件中引入DWR所需的JavaScript库,然后通过JavaScript调用Java方法: ```html <%@ page import="com.hello.Hello" %> <html> <head> <title>DWR Example</title> <script type="text/javascript" src="/path/to/dwr/engine.js"></script> <script type="text/javascript"> function callJavaMethod() { var name = "World"; var demo = new Demo(); demo.hello(name, function(response) { alert(response); }); } </script> </head> <body onload="callJavaMethod()"> <!-- 页面内容 --> </body> </html> ``` - `src="/path/to/dwr/engine.js"`应该指向DWR提供的JavaScript库文件的位置。 - 使用`new Demo()`创建Java对象的实例,并调用其`hello()`方法,回调函数处理Java方法的响应结果。 #### 五、测试与调试 1. **部署并运行应用**: - 将项目部署到服务器上,通过浏览器访问创建的JSP页面。 - 观察控制台输出或弹出的对话框,检查是否能正确显示Java方法的返回值。 通过以上步骤,我们可以实现从JavaScript端直接调用Java方法的功能,这极大地简化了前后端之间的通信过程,提高了开发效率。DWR的使用不仅限于此,还可以实现更复杂的数据交互功能,如数据推送等。
- 粉丝: 1
- 资源: 8万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助