DWR如何实现Ajax
这篇文章介绍的内容是关于DWR如何实现Ajax,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
一、 Ajax的介绍。
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。
AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。
二、 DWR的介绍
1. 官网地址 .smileyan.cy.Cyservice"这个也可以自己修改。注意要与src目录下一一对应。
也就是说我在cn.smileyan.cy包下有个类名字叫做Cyservice,这个类是Ajax方法与后台交流的关键类。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" ".smileyan.cy.Cyservice"/>
</create>
</allow>
</dwr>
(3) web.xml中添加DWR配置
<servlet>
<display-name>DWR Servlet</display-name>
<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>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping> 3. 前端代码
特别提醒,需要注意引入DWR的script代码,记得对应到Demo.js
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ".smileyan.cy;
public class Cyservice {
public String get(String str) {
return "Hello DWR !";
}
} 5. 运行,然后点击按钮查看效果
四、 总结
这个例子非常简单,但是这个与简答的js实现隐藏与显示是不同的,因为这个其实是把java代码转换成js代码,也就是Cyservice类对应成了Demo.js,Demo.get方法实际调用的是Cyservice的对象的get方法。
这样做的好处就是在没有跳转的情况下实现了与后台的交互,大大提高了用户体验。
相关推荐:
DWR框架体验(实现基于ajax的无刷新效果)