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的无刷新效果)