DWR与Spring整合配置详解

需积分: 3 1 下载量 132 浏览量 更新于2024-10-31 收藏 2KB TXT 举报
"DWR (Direct Web Remoting) 是一个开源框架,它允许JavaScript在浏览器端与服务器端的Java代码进行交互,实现AJAX功能。Spring是一个全面的企业级应用开发框架,提供了依赖注入、AOP(面向切面编程)等功能。DWR与Spring的整合使得我们在Web应用中可以更方便地利用Spring的IoC(Inversion of Control)容器来管理DWR的远程对象。" 在DWR+SPRING整合中,主要涉及到以下几个关键知识点: 1. DWR配置: 在`dwr.xml`文件中,我们定义了允许DWR创建的远程Java对象。例如,`<create javascript="DWRUser" creator="spring">`这一行表示创建一个名为`DWRUser`的JavaScript对象,该对象对应的Java类是通过Spring IoC容器管理的。`creator="spring"`表明我们使用Spring来实例化这个对象。 2. 参数配置: `<param name="beanName" value="userBiz">` 这个参数指定了在Spring配置文件中对应的bean名称。`beanName`的值`userBiz`表示我们要将Spring中的`userBiz` bean暴露给DWR使用。 3. 方法暴露: `<include method="loadById"/>` 这一行表明允许DWR调用Java对象`DWRUser`的`loadById`方法。这样,客户端的JavaScript可以直接调用这个方法,而无需通过HTTP请求。 4. Spring配置: 在`applicationContext.xml`文件中,我们需要定义`userBiz`这个bean,例如: ```xml <bean id="userBiz" class="com.shaccp.biz.UserBizImpl"> <property name="userDAO" ref="userDAO"/> </bean> ``` 这里,`userBiz` bean的实现类是`UserBizImpl`,并且它依赖于`userDAO`。通过`ref="userDAO"`,Spring会自动注入`userDAO`的实例。 5. 业务逻辑: `UserBizImpl`类实现了`UserBiz`接口,包含了一些基本的业务操作,如`getByPage`, `add` 和 `loadById`。这些方法可以通过DWR直接在客户端调用,实现异步数据处理。 6. JavaScript调用: 在浏览器端,我们可以通过引入DWR生成的JavaScript接口文件,如`<script type='text/javascript' src='../../dwr/interface/DWRUser.js'></script>`,来访问和调用服务器上的Java方法。例如,我们可以使用`DWRUser.loadById(id)`来执行`loadById`方法。 7. 依赖注入: Spring的依赖注入使得`UserBizImpl`类不需要在代码中直接创建`UserDAO`的实例,而是通过`setUserDAO`方法接收由Spring注入的`UserDAO`。这种方式提高了代码的可测试性和可维护性。 DWR+SPRING整合是通过DWR来利用Spring的IoC容器管理和调用后端服务,实现前端JavaScript与后端Java业务逻辑的无缝交互,简化了Web应用的开发过程。这种整合方式在需要实时更新数据或者实现复杂交互的Web应用中尤其有用。