DWR配置与使用详解

需积分: 0 1 下载量 149 浏览量 更新于2024-11-17 收藏 83KB DOC 举报
"DWR学习资料,涵盖了DWR配置文件dwr.xml的详解及核心概念" Direct Web Remoting (DWR) 是一个Java库,它允许Web应用程序实现实时的Ajax功能,即在客户端JavaScript和服务器端Java代码之间进行双向通信。DWR通过减少HTTP请求的数量和复杂性,提高了Web应用的响应速度和用户体验。 在DWR的学习过程中,理解和配置dwr.xml文件至关重要。dwr.xml文件是DWR的核心配置文件,用于定义哪些Java类可以被远程调用,以及如何转换数据类型以供JavaScript使用。以下是dwr.xml文件的基本结构和关键元素的详细说明: 1. DOCTYPE声明:文件开头的DOCTYPE声明指定了DWR的DTD(文档类型定义),用于验证配置文件的语法。在示例中,声明的是DWR 1.0的DTD。 2. <dwr>根元素:包含了整个配置文件的其他元素。 3. <init>子元素:这个部分用于初始化creator(远程bean的生成器)和converter(数据转换器)。Creator定义了如何在服务器上创建和实例化对象,而converter则定义了如何将Java对象转换成JavaScript可以理解的格式。每个creator和converter都需要一个唯一的id,以便在其他部分引用。 - `<creator>`:定义一个远程bean的生成器,它的`id`属性用于唯一标识,`class`属性指定生成器的全限定类名。 - `<converter>`:定义数据转换规则,`id`属性同样用于标识,`class`属性指定转换器的类。 4. <allow>子元素:这个部分定义了哪些Java类可以被远程调用(create)和转换(convert)。 - `<create>`:允许创建一个远程bean。`creator`属性指定哪个creator来实例化对象,`javascript`属性定义在客户端JavaScript中访问该bean的变量名,`scope`属性指定作用域(例如,session或page)。 - `<param>`:在`<create>`内,`param`元素用于传递构造函数参数,`name`属性指定参数名,`value`属性提供值。 - `<convert>`:定义数据类型转换规则,`converter`属性指定转换器id,`match`属性可以是类名或通配符,用于匹配需要转换的类。 5. <signatures>子元素:虽然在提供的内容中没有详细介绍,但这个部分通常用于指定方法签名,以支持更复杂的类型检查和转换。 默认情况下,DWR自动处理一些常见的Java类型,如基本类型(boolean, int, double等)、它们的对象形式(Boolean, Integer等)、String以及UtilDate。对于其他自定义类,你需要在配置文件中显式声明转换器或creator。 学习DWR时,你需要掌握如何编写和维护dwr.xml文件,理解如何配置creator和converter,以及如何定义远程方法调用的权限。同时,了解DWR的安全性和性能优化也是至关重要的,例如限制允许的远程调用、使用Caching和Batching机制以减少网络通信等。