DWR中文文档.pdf
### DWR中文文档知识点概述 #### 一、DWR入门 **1.1 简介** DWR(Direct Web Remoting)是一种简化Ajax应用程序开发的技术。它通过提供一种简单的方式来调用服务器端的Java方法,从而使得客户端的JavaScript代码可以直接操作服务器端的Java对象,如同操作本地对象一样。这种方式极大地简化了Ajax应用的复杂度。 **1.2 第一个DWR程序:Hello World** ##### 1.2.1 将DWR放入你的工程 为了使用DWR,首先需要将其添加到项目中。这通常意味着下载DWR的最新版本,并将其包含在项目的lib目录下。确保所有的依赖库都已正确配置。 ##### 1.2.2 编辑配置文件 DWR的配置文件(`web.xml` 和 `dwr.xml`)是启动DWR的关键。`web.xml` 是Servlet容器的标准配置文件,而 `dwr.xml` 则用于定义服务接口和服务实现。 ##### 1.2.3 编写service Service是实现具体业务逻辑的Java类。这些类中的方法可以通过DWR被JavaScript调用。编写service时需要注意权限控制和方法签名的定义。 ##### 1.2.4 测试DWR 测试DWR可以通过简单的客户端JavaScript调用来完成。通常,开发者会在本地环境中运行测试,确保所有配置正确无误。 ##### 1.2.5 编写一个jsp 为了展示动态内容,通常需要创建一个JSP页面。在这个页面上,可以通过JavaScript调用DWR提供的服务方法,并根据返回的结果更新页面内容。 **1.3 本章总结** 本章介绍了DWR的基本概念及其安装过程,并通过一个简单的例子展示了如何使用DWR进行基本的开发。 #### 二、web.xml配置 **2.1 主要配置** `web.xml` 中包含了DWR Servlet的初始化参数。这些参数用于控制DWR的行为,例如安全性设置、日志记录等。 **2.2 常用<init-param>参数列表** ##### 2.2.1 安全参数 DWR提供了多种安全相关的初始化参数,如是否启用CORS支持、是否允许跨域请求等。 ##### 2.2.2 Ajax服务器加载时保护参数 这些参数可以用来限制DWR的可用性,例如只允许特定IP地址的请求等。 ##### 2.2.3 其他参数 包括日志级别、连接超时时间等非安全相关的配置。 **2.3 日志配置** DWR支持日志记录功能,可以通过配置文件来指定日志级别和其他日志相关的设置。 **2.4 多个dwr.xml配置和J2EE角色定义** 对于大型项目,可能需要多个 `dwr.xml` 文件来组织不同的服务。此外,还可以为不同的角色定义不同的访问权限。 **2.5 插件配置** DWR支持插件机制,可以通过配置文件来扩展其功能,如增加新的转换器或验证器。 **2.6 测试模式配置** 为了方便开发和调试,可以在配置文件中开启测试模式。 #### 三、dwr.xml配置 **3.1 纵览** `dwr.xml` 文件是DWR的核心配置文件之一,用于定义具体的service接口和服务实现。 **3.2 <init>标签** 该标签用于设置DWR的全局初始化参数,如默认的编码格式、缓存策略等。 **3.3 <allow>标签** ##### 3.3.1 Creator Creator标签定义了如何创建一个service实例。可以指定构造函数的参数类型和值,以及使用哪种方式创建对象(如Spring Bean或WebWork Action)。 ##### 3.3.2 Converter Converter标签用于定义对象的序列化规则。这对于复杂的对象类型尤为重要,因为它决定了如何将Java对象转换为JSON格式,反之亦然。 **3.4 <signatures>标签** 该标签用于定义服务接口中的方法签名。包括方法名、参数类型和返回值类型等。 #### 四、整合 **4.1 DWR与Servlet** DWR可以很容易地与Servlet技术集成,利用webContext来获取和管理资源。 **4.2 DWR与Spring** Spring是一个流行的Java应用框架,DWR可以无缝集成Spring,利用Spring的依赖注入功能来创建和管理service对象。 **4.3 DWR与JSF** JSF是Java Server Faces的简称,是Java EE平台的一部分,用于构建用户界面。DWR可以与JSF集成,增强其交互性。 **4.4 DWR与Struts** Struts是另一个广泛使用的Java MVC框架。DWR可以与Struts集成,提供更强大的客户端-服务器通信能力。 **4.5 DWR与Weblogic或PageFlow** 对于使用Weblogic服务器或其他类似技术的应用程序,DWR同样可以很好地集成。 **4.6 DWR与Hibernate** Hibernate是一个对象关系映射(ORM)工具,DWR可以与Hibernate集成,实现更灵活的数据访问。 **4.7 DWR与WebWork** WebWork是一个轻量级的Java Web应用框架,DWR可以与之集成,提高开发效率。 **4.8 DWR与Acegi** Acegi是Spring Security的前身,DWR可以与Acegi集成,实现安全控制。 #### 五、DWR中的JavaScript简介 **5.1 简单的回调函数** 回调函数是DWR中最基本的概念之一,用于处理服务器端方法执行后的响应。 **5.2 调用元数据对象** 元数据对象包含了关于服务器端对象的所有信息,包括方法签名、参数类型等。这些信息可以帮助前端代码更好地与后端服务交互。 #### 六、engine.js 功能 `engine.js` 是DWR的核心JavaScript库,提供了许多高级功能,如批量调用、错误处理等。 #### 七、util.js 功能 `util.js` 提供了一系列实用工具函数,用于简化前端开发工作,如操作DOM元素、数据绑定等。 #### 八、DWR进阶 **8.1 DWR Annotations** DWR支持注解来简化配置。例如,可以使用注解来标记哪些类或方法可供远程调用。 **8.2 错误和异常处理** DWR提供了一套完善的错误和异常处理机制,可以捕获并报告在远程调用过程中发生的各种错误。 **8.3 传递额外的数据到callback函数** 除了返回值外,还可以传递额外的信息到回调函数中,以便于更灵活地处理响应。 **8.4 从其他的URL读取数据** DWR支持从不同的URL加载数据,这对于分布式系统尤为重要。 **8.5 安全** DWR内置了多种安全特性,包括但不限于CSRF防护、输入验证等。 #### 九、范例精讲 通过具体的案例来展示如何使用DWR实现特定的功能,如购物车功能的实现。 #### 十、附录 **10.1 常见问题** 解决了一些常见的技术难题,如TransformerFactoryConfigurationError、XML解析错误等。 **10.2 JavaScript高级应用** 深入探讨了JavaScript的一些高级特性,如函数式编程、动态类型等,以及如何在DWR项目中运用这些特性。
- 诸葛明亮2014-08-03不错的资源
- rubeyang2014-01-23还不错,这方面资料太少了
- huzhigenlaohu2014-09-30找了很久,终于找到了,谢谢
- cailu53828052014-07-04dwr,java代码爆入给客户端
- 粉丝: 8
- 资源: 89
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助