首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AJAX实践DWR篇

DWR(Direct Web Remoting)是一个WEB远程调用框架.利用这个框架可以让AJAX开发变得很简单.利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码).它的最新版本DWR0.6添加许多特性如:支持Dom Trees的自动配置,支持Spring(JavaScript远程调用spring bean),更好浏览器支持,还支持一个可选的commons-logging日记操作. 以上摘自open-open,看了几天,确实是一个非常优秀的项目,它通过反射,将java翻译成javascript,然后利用回调机制,轻松实现了javascript调用Java代码。 其大概开发过程如下: 1.编写业务代码,该代码是和dwr无关的。 2.确认业务代码中哪些类、哪些方法是要由javascript直接访问的。 3.编写dwr组件,对步骤2的方法进行封装。 4.配置dwr组件到dwr.xml文件中,如果有必要,配置convert,进行java和javascript类型互转。 5.通过反射机制,dwr将步骤4的类转换成javascript代码,提供给前台页面调用。 5.编写网页,调用步骤5的javascript中的相关方法(间接调用服务器端的相关类的方法),执行业务逻辑,将执行结果利用回调函数返回。 6.在回调函数中,得到执行结果后,可以继续编写业务逻辑的相关javascript代码。 下面以用户注册的例子,来说明其使用。(注意,本次例子只是用于演示,说明DWR的使用,类设计并不是最优的)。 1.先介绍下相关的Java类 User: 用户类, public class User { //登陆ID,主键唯一 private String id; //姓名 private String name; //口令 private String password; //电子邮件 private String email; //以下包含getXXX和setXXX方法 ....... } UserDAO:实现User的数据库访问,这里作为一个演示,编写测试代码 public class UserDAO { //存放保存的数据 private static Map dataMap = new HashMap(); //持久用户 public boolean save(User user) { if (dataMap.containsKey(user.getId())) return false; System.out.println("下面开始保存用户"); System.out.println("id:"+user.getId()); System.out.println("password:"+user.getPassword()); System.out.println("name:"+user.getName()); System.out.println("email:"+user.getEmail()); dataMap.put(user.getId(), user); System.out.println("用户保存结束"); return true; } //查找用户 public User find(String id) { return (User)dataMap.get(id); } } DWRUserAccess:DWR组件,提供给javascript访问的。 public class DWRUserAccess { UserDAO userDAO = new UserDAO(); public boolean save(User user) { return userDAO.save(user); } public User find(String id) { return userDAO.find(id); } } 下面说明下程序执行的流程 1.用户在页面上输入相关注册信息,id、name、password、email,点击“提交”按钮 2.javascript代码开始执行,根据用户填写相关信息,通过dwr提供的DWRUserAccess.j

01
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Ajax面试题_世界十道经典面试题

    大家好,又见面了,我是你们的朋友全栈君。 1、什么是AJAX,为什么要使用Ajax(请谈一下你对Ajax的认识) 什么是ajax: AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。 Ajax包含下列技术: 基于web标准(standards-basedpresentation)XHTML+CSS的表示; 使用 DOM(Document ObjectModel)进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。 2、为什么要用ajax: Ajax应用程序的优势在于: 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。 2、AJAX最大的特点是什么。 Ajax可以实现动态不刷新(局部刷新) 就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。 3、请介绍一下XMLhttprequest对象。 Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。 4、AJAX技术体系的组成部分有哪些。 HTML,css,dom,xml,xmlHttpRequest,javascript 5、AJAX应用和传统Web应用有什么不同。 在传统的Javascript编程中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个HTML form然后GET或者POST数据到服务器端。用户需要点击”Submit”按钮来发送或者接受数据信息,然后等待服务器响应请求,页面重新加载。 因为服务器每次都会返回一个新的页面, 所以传统的web应用有可能很慢而且用户交互不友好。 使用AJAX技术, 就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互。 通过HTTP Request, 一个web页面可以发送一个请求到web服务器并且接受web服务器返回的信息(不用重新加载页面),展示给用户的还是通一个页面,用户感觉页面刷新,也看不到到Javascript后台进行的发送请求和接受响应。 6、AJAX请求总共有多少种CALLBACK。 Ajax请求总共有八种Callback onSuccess onFailure onUninitialized onLoading onLoaded onInteractive onComplete onException

    02

    经典的20道AJAX面试题[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。 1、什么是AJAX,为什么要使用Ajax(请谈一下你对Ajax的认识) 什么是ajax: AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。 Ajax包含下列技术: 基于web标准(standards-basedpresentation)XHTML+CSS的表示; 使用 DOM(Document ObjectModel)进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。 2、为什么要用ajax: Ajax应用程序的优势在于: 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。 2、AJAX最大的特点是什么。 Ajax可以实现动态不刷新(局部刷新) 就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

    01

    ajax 面试题_javascript面试题大全

    1、什么是AJAX,为什么要使用Ajax(请谈一下你对Ajax的认识) 什么是ajax: AJAX是“Asynchronous JavaScript and XML”的缩写。他是指一种创建交互式网页应用的网页开发技术。 Ajax包含下列技术: 基于web标准(standards-basedpresentation)XHTML+CSS的表示; 使用 DOM(Document ObjectModel)进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。 2、为什么要用ajax: Ajax应用程序的优势在于: 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。 2、AJAX最大的特点是什么。 Ajax可以实现动态不刷新(局部刷新) 就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

    01

    【编程基础】什么是内存泄露

    内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收)即所谓内存泄漏。 内存泄漏形象的比喻是“操作系统可提供给所有进程的存储空间正在被某个进程榨干”,最终结果是程序运行时间越长,占用存储空间越来越多,最终用尽全部存储空间,整个系统崩溃。所以“内存泄漏”是从操作系统的角度来看的。这里的存储空间并不是指物理内存,而是指虚拟内存大小,这个虚拟内存大小取决于磁盘交换区设定的大小。由程序申请的一块内存,

    06

    为什么建议使用虚拟机来安装Linux?

    在与部分读者的交流中,笔者发现,很多初学者都认为,学习 Linux 就必须将自己的电脑装成 Linux 系统或者必须要有真正的服务器设备。而实际上,这是一些机构、书籍或网络文章给大家传导的错误思想。 其实,学习 Linux 最简单、最实用的环境就是虚拟机环境(例如,通过 VMware Workstation 软件学习),这样说的原因有如下几点。 1) 利用虚拟机软件搭建 Linux 学习环境简单,容易上手,最重要的是利用虚拟机模拟出来的 Linux 与真实的 Linux 几乎没有区别,而购买服务器动则就要一两万元人民币,不是一般的初学者所能承受的,且声音很大,也很费电。 如果用 PC 和笔记本搭建 Linux(包括双系统共存方式),那就完全是 Linux 环境了,这样做不但加大了你的学习难度(例如,没法用 Word 等记笔记,以及正常浏览网页),也与实际的工作环境相差很远,而用虚拟机软件来搭建环境是最接近企业工作环境的。

    04
    领券