DWR整合Spring
2016-05-08 17:29
573 查看
1.前言
DWR提供了一个spring的创建器,一旦使用spring创建器,DWR将负责搜索Web应用中的Spring容器,并将Springp容器中的Bean转换成一个浏览器中JavaScript可调用的对象。2.创建Java类
下面我们创建一个简单的服务器处理类,该服务器处理将被配置在Spring容器中。package com.owen.dwr.dwr; /** *服务器处理类 * @author owenwilliam 2016-5-8 * @version 1.0 */ public class HelloSpring { // 服务器处理方法 public String hello(String name) { return name + "您好,您已经会调用Spring中的Bean了..."; } }
3.配置Spring文件
将上面定义的类部署在Spring容器中。<?xml version="1.0" encoding="GBK"?> <!-- 指定Spring配置文件的Schema信息 --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> <!-- 定义一个bean --> <bean id="hello" class="com.owen.dwr.HelloSpring" /> </beans>
4.配置web.xml文件
<?xml version="1.0" encoding="GBK"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- 配置DWR的核心Servlet --> <servlet> <!-- 指定DWR核心Servlet的名字 --> <servlet-name>dwr-invoker</servlet-name> <!-- 指定DWR核心Servlet的实现类 --> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> <!-- 指定DWR核心Servlet处于调试状态 --> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </servlet> <!-- 指定核心Servlet的URL映射 --> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <!-- 指定核心Servlet映射的URL --> <url-pattern>/leedwr/*</url-pattern> </servlet-mapping> </web-app>
5.配置dwr.xml文件
<?xml version="1.0" encoding="GBK"?> <!-- 指定DWR配置文件的DTD等信息 --> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd"> <dwr> <allow> <create creator="spring" javascript="hello"> <!-- 指定使用Spring容器中的hello Bean --> <param name="beanName" value="hello"/> </create> </allow> </dwr>
6.创建hellodwr.js文件
function sendMessage() { // 调用远程的hello方法,使用了dwr.util的getValue方法获取HTML元素的值 hello.hello(dwr.util.getValue('name') , cb); } // 回调方法 function cb(data) { // 使用dwr.util的setValue方法设置HTML元素的值 dwr.util.setValue('show' ,data); }
7.客户端调用
接下来我们就写个index.html文件来调用。<!DOCTYPE html> <html> <head> <meta name="author" content="OwenWilliam" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title> DWR整合Spring </title> </head> <body> <script type='text/javascript' src='./leedwr/engine.js'></script> <script type='text/javascript' src='./leedwr/util.js'></script> <script type='text/javascript' src='./leedwr/interface/hello.js'></script> <script type="text/javascript" src="hellodwr.js"></script> <h3> DWR整合Spring </h3> 请输入您的名字<input id="name" name="name" type="text"/><br /> <input type="button" value="调用Spring Bean" onclick="sendMessage();"/> 下面是服务器的回应: <hr> <div id="show"></div> </body> </html>
8.执行结果
相关文章推荐
- Java出现No enclosing instance of type E is accessible. Must qualify the allocation with an enclosing
- 新手入门-如何使用JFinal开发javaweb(1)
- 20145221 《Java程序设计》第十周学习总结
- PTA-测试-Java-5-1 厘米换算英尺英寸 (15分)
- [JAVA修炼之路十一]-java包Concurrent包-AQS锁的应用、优化、实践
- Java类和对象
- 20145120 《Java程序设计》第10周学习总结
- 【JAVA 动态创建风水罗盘 超精华Swing项目方案-类关系图 - 文章02】
- 限量版java基础中面向对象的继承特征
- JAVA常用递归实例
- 小白须知——java基础中多态的理解
- 新手福利——理解java多态的概念和作用
- Eclipse中xml文件注释和撤销注释快捷键
- 明星作品——java基础之逻辑运算
- Hello World Spring MVC
- java Swing组件之JSplitPane使用
- 第十周java 学习总结
- Java 包的命名
- 第十周java 学习总结
- (三)Struts2 拦截器