DWR例子

preview
共15个文件
class:3个
xml:3个
prefs:2个
需积分: 0 128 下载量 161 浏览量 更新于2008-04-17 收藏 437KB RAR 举报
Direct Web Remoting (DWR) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行交互,实现动态的Web应用。DWR简化了Ajax(Asynchronous JavaScript and XML)开发,使得前端开发者可以更方便地调用服务器上的方法,而无需处理复杂的HTTP请求和响应细节。下面我们将深入探讨DWR的基本概念、工作原理以及如何通过提供的例子进行学习。 1. DWR基础概念: - **远程方法调用(RMI)**:DWR的核心功能是实现了浏览器中的JavaScript代码能够像调用本地函数一样调用服务器端的Java方法,这种机制类似于远程方法调用。 - **逆向Ajax**:DWR利用Ajax技术实现了从客户端到服务器的双向通信,即不仅服务器可以向客户端推送数据,客户端也可以主动发起请求获取数据。 - **安全机制**:DWR提供了CSRF(跨站请求伪造)防护和白名单机制,确保只有授权的JavaScript可以访问服务器资源。 2. DWR工作流程: - **配置阶段**:在服务器端,你需要在web.xml中配置DWR的Servlet,以及在应用上下文中定义允许访问的Java类和方法。 - **编译阶段**:DWR会自动生成JavaScript接口,使得客户端可以直接调用这些接口来执行服务器端的方法。 - **运行时**:当JavaScript调用服务器方法时,DWR会通过HTTP POST请求发送调用信息,服务器接收到请求后执行相应的方法,然后将结果返回给客户端。 3. "DWR案例"学习指南: - **环境搭建**:你需要在项目中引入DWR的依赖库,并配置web.xml,设置DWR的初始化参数。 - **创建Java类和方法**:编写一个简单的Java类,包含一些公共方法供客户端调用。 - **暴露Java方法**:在DWR的配置文件中,指定这个Java类和可访问的方法。 - **生成JavaScript接口**:DWR会自动根据配置生成对应的JavaScript文件,包含了对服务器方法的调用接口。 - **编写HTML/JavaScript**:在网页中引入DWR生成的JavaScript文件,然后就可以在JavaScript中调用服务器的方法。 - **测试运行**:运行网页,通过浏览器的开发者工具查看网络请求,确认DWR调用是否成功。 4. 实战练习: - **基本调用**:尝试实现一个简单的页面,通过DWR调用服务器的“Hello, World!”方法,展示Ajax的异步通信效果。 - **数据交互**:创建一个表格,通过DWR动态获取服务器的数据并更新表格内容。 - **事件处理**:结合用户交互事件,如按钮点击,调用DWR方法获取或更新服务器数据。 - **安全考虑**:了解并实践DWR的安全配置,例如设置白名单,防止非法调用。 通过上述步骤,初学者可以逐步掌握DWR的基本使用和工作原理。不断地练习和探索,你将能够熟练地利用DWR构建高效、交互性强的Web应用。在实践中,可以参考"DWR案例"提供的示例代码,一步步学习和理解DWR的各个功能和应用场景。
身份认证 购VIP最低享 7 折!
30元优惠券