今天看了一下dwr,感觉还不错,就学习了下,在文档的指导下还是很容易学习的。
1、新建web工程,将附件中的dwr.jar 和 common-logging.jar 导入工程。
配置web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name></display-name> <servlet> <servlet-name>dwr-servlet</servlet-name> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dwr-servlet</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
新建java类
package com.wch.dwr; public class HelloWorld { private String name; public HelloWorld(){ } public HelloWorld(String name){ this.name = name; } public String print(String name){ return "name>>>"+name; } public String sysout(){ System.out.println( "sysout:"+name); return "sysout"; } }
新建dwr.xml 与web.xml 同级
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd"> <dwr> <allow> <create javascript="helloworld" creator="new"> <param name="class" value="com.wch.dwr.HelloWorld"></param> <include method="print"/> </create> </allow> </dwr>
编写jsp页面 (注意其中的js引入,dwr开头,那些js都是在dwr的jar包中的)
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <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/helloworld.js"></script> </head> <body> This is my JSP page. <br> <input type="text" id="dwrText" /> <input type="button" onclick="doalert();" /> <script type="text/javascript"> helloworld.sysout(); function doalert(){ helloworld.print("wch",test);} function test(data){alert(data);} </script> </body> </html>
部署运行就可以了