dwr参考资料
需积分: 0 12 浏览量
更新于2012-08-05
收藏 19.02MB RAR 举报
Direct Web Remoting (DWR) 是一个开源Java库,它允许在Web应用程序中实现JavaScript与服务器端Java对象的双向通信。DWR简化了Ajax(Asynchronous JavaScript and XML)开发,使得开发者可以在浏览器端直接调用服务器上的Java方法,就像它们是本地函数一样,从而创建动态、交互式的Web应用。
**DWR的核心概念**
1. **Reverse Ajax**:DWR的核心特性就是实现了Reverse Ajax,即服务器可以主动向客户端推送数据,而不仅仅是响应客户端的请求。
2. **Java到JavaScript的映射**:DWR通过自动序列化和反序列化Java对象,使得JavaScript可以直接操作这些对象,无需理解底层的HTTP通信细节。
3. **安全机制**:DWR提供了安全控制,包括跨站脚本攻击(XSS)防护,以及通过白名单或黑名单限制可调用的方法,确保只有授权的代码才能执行。
4. **CORS支持**:DWR支持跨域资源共享(CORS),允许不同源的资源进行交互,拓宽了Web应用的潜力。
5. **异步与同步调用**:DWR支持两种调用方式,异步调用使得用户界面保持响应,而同步调用则等待服务器返回结果。
6. **自动刷新**:DWR提供了自动刷新功能,当服务器端Java类或方法改变时,可以自动更新客户端的JavaScript代码。
7. **调试工具**:DWR提供了一个内置的调试工具,可以帮助开发者查看和调试与服务器之间的通信。
**DWR的主要组件**
1. **Engine**:负责JavaScript和Java之间的通信,处理请求和响应。
2. **Batcher**:批量处理多个请求,优化网络传输,减少服务器压力。
3. **Security**:包含了一系列的安全策略,如CSP(Content Security Policy)和Whitelist。
4. **Introspector**:提供对Java对象的元数据信息,帮助JavaScript更好地理解和操作Java对象。
5. **AutoComplete**和**LiveForm**:这两个组件提供了常见的用户界面功能,如自动完成输入和实时表单验证。
**DWR的应用场景**
DWR广泛应用于需要实时交互的Web应用,如股票交易系统、聊天室、实时数据监控等。它的强大之处在于能够将复杂的服务器端逻辑透明地引入到客户端,提高用户体验,同时减轻服务器的压力。
**DWR与其他技术的比较**
DWR与传统的Ajax框架(如jQuery,Prototype等)相比,其优势在于更强大的服务器端到客户端的通信能力。而与WebSocket相比,DWR更适合于向后兼容和简单的双向通信需求。
在实际项目中,选择DWR还是其他技术,取决于具体的需求、项目规模以及团队的技术栈。理解DWR的工作原理和核心功能,能帮助开发者更有效地利用这个工具来构建高性能的Web应用。
okgoodyes
- 粉丝: 6
- 资源: 44
最新资源
- jsp+sql毕业生招聘系统毕业设计(系统+论文+英文文献+综合材料)(2024qe).7z
- CNN卷积神经网络 训练集
- java项目之都市供求信息网源代码.zip
- jsp+sql智能交通道路管理系统(论文+任务书+外文翻译+开题报告+文献综述)(20246v).7z
- jsp+sql智能道路交通信息管理系统的设计与实现(论文+系统+开题报告+答辩PPT+外文翻译)(2024oq).7z
- JSP+SQL网上书店销售系统(论文+系统)(202431).7z
- jsp+基于JB的人事管理系统(源代码+论文)(2024me).7z
- jspOA办公自动化系统-毕业设计(2024u7).7z
- jsp个人理财系统(论文)(2024ol).7z
- jsp仓储管理系统设计(源代码+论文)(2024x4).7z
- JSP+sql实验教学管理系统(系统+论文+开题报告+封面+中期检查表+英文文献)(2024a7).7z
- JSP公司办公信息管理系统(源代码+论文)(2024f6).7z
- jsp+sql网络书店销售管理系统(论文+任务书+开题报告+中期检查表+摘要+英文文献)(202452).7z
- JSP+sql网络远程作业处理系统(系统+论文+开题报告+中英文摘要+封面+目录+资料)(2024ul).7z
- JSP+SQL网上书店设计(源代码+论文)(202422).7z
- JSP+SQL网上书店售书系统(源代码+论文+答辩PPT)(202494).7z