实际上dwr是对ajax的封装,ajax配制少但代码多,相反dwr配制多但代码简单
现在就开始学习dwr
1. 下载dwr.jar文件加入到WEB-INF/lib下面
2. 配制web.xml文件,在其中加入
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>
org.directwebremoting.servlet.DwrServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
3. 开发后台的java类
类名为HelloWorld.java文件
Pakeagecom.peter;
Public classHelloWorld{
Public void sayHello(){
Return “helloword”;
}
}
4. 在web.xml同级目录中加入dwr.xml内容配制如下
<?xmlversion="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAheadLimited//DTD Direct Web Remoting 2.0//EN""http://getahead.org/dwr/dwr20.dtd">
<dwr>
<allow>
<create creator="new"javascript="HelloWorld">
<!—对应java中的类名-->
<paramname="class" value="com.peter.HelloWorld"/>
</create>
</allow>
</dwr>
5. 设置页面内容
<%@ page language="java"pageEncoding="GBK"%>
<html>
<head>
<title>chat</title>
<meta http-equiv="pragma"content="no-cache">
<meta http-equiv="cache-control"content="no-cache">
<meta http-equiv="expires"content="0">
<!—这个地址是固定写法,js文件名和dwr中javascript名字是一致的-->
<script type='text/javascript'src='dwr/interface/HelloWorld.js'></script>
<script type='text/javascript'src='dwr/engine.js'></script>
<script type='text/javascript'src='dwr/util.js'></script>
</head>
<body>
<script type="text/javascript">
function callSelectSys() {
//调用后台方法
HelloWorld.sayHello(callBack);
}
function callBack(data) {
alert(data);
}
</script>
<input type="button"value="sayHello" onclick="callSelectSys()">
</body>
</html>
运行http://localhost:8080/ProjectName/**