spring+dwr
来源:互联网 发布:索罗斯期货软件 编辑:程序博客网 时间:2024/04/29 16:35
最近在研究dwr推技术,想要实现服务器端在某个条件触发时,自动向指定页面传送数据。
以spring+dwr为例,采用maven管理jar包
项目的结构图如下:
spring.xml配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-4.1.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-4.1.xsd"><bean id="dwrtest" class="com.bjsxt.dwrtest.Test0"></bean> <bean id="dwrtest2" class="com.bjsxt.dwrtest.Test1"></bean> <bean id="dwrtest3" class="com.bjsxt.dwrtest.SendMsg"></bean> </beans>
dwr.xml配置
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd"> <dwr> <allow> <create javascript="T0" creator="spring" > <param name="beanName" value="dwrtest"></param> </create> <create javascript="T1" creator="spring" > <param name="beanName" value="dwrtest2"></param> </create> <create javascript="SendMsg" creator="spring"> <param name="beanName" value="dwrtest3"></param> </create> <convert converter="bean" match="com.bjsxt.bean.User"/> <!-- <param name="include" value="id,name"></param> </convert> --> </allow> </dwr>
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com</groupId> <artifactId>dwrTest</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>dwrTest Maven Webapp</name> <url>http://maven.apache.org</url> <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring.version>4.1.4.RELEASE</spring.version><jackson.version>2.5.0</jackson.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency> <!-- dwr --> <dependency><groupId>org.directwebremoting</groupId><artifactId>dwr</artifactId><version>3.0.M1</version></dependency><!-- common logging --><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version></dependency><!-- json --><dependency><groupId>org.json</groupId><artifactId>json</artifactId><version>20140107</version></dependency> </dependencies> <build> <finalName>dwrTest</finalName> </build></project>
User类
package com.bjsxt.bean;public class User {private int id;private String name;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "User [id=" + id + ", name=" + name + "]";}}
SendMsg类
package com.bjsxt.dwrtest;import java.util.Collection;import org.directwebremoting.ScriptBuffer;import org.directwebremoting.ScriptSession;import org.directwebremoting.WebContext;import org.directwebremoting.WebContextFactory;import org.directwebremoting.proxy.dwr.Util;public class SendMsg { public void sendMsg(String msg){ //得到上下文 WebContext contex = WebContextFactory.get(); //得到要推送到 的页面 dwr3为项目名称 , 一定要加上。 Collection<ScriptSession> sessions = contex.getScriptSessionsByPage("/dwrTest/showMsg.jsp"); //不知道该怎么解释这个 , Util util = new Util(sessions); //下面是创建一个javascript脚本 , 相当于在页面脚本中添加了一句 show(msg); ScriptBuffer sb = new ScriptBuffer(); sb.appendScript("show("); sb.appendData(msg); sb.appendScript(")"); //推送 util.addScript(sb); } }
Test0类
package com.bjsxt.dwrtest;import com.bjsxt.bean.User;public class Test0 { public User method1(){ /*JSONObject jsonObj=new JSONObject(); jsonObj.put("id", 12); jsonObj.put("name","longyu");*/ User user=new User(); user.setId(1); user.setName("ly"); return user; } /* public static void main(String[] args) { System.out.println(method1());}*/}
Test1类
package com.bjsxt.dwrtest;public class Test1 { public String method1(){ return "调用方法111111"; } public String method2(){ return "调用方法222222"; } }
jQuery.1.7.1.js下载地址:
项目下载地址:
1 0
- spring+dwr
- spring+dwr
- dwr开发总结 dwr+spring
- dwr与spring相结合
- dwr联手spring
- dwr与spring相结合
- Spring+hibernate+DWR整合
- DWR AND SPRING 结合
- Spring Integration DWR
- dwr+hibernate+spring分页
- spring+hibernate+dwr小结
- ExtJs + DWR + Spring
- dwr spring整合
- Spring完全整合DWR
- Spring+hibernate+DWR整合
- DWR+SPRING整合
- Spring+hibernate+DWR整合
- DWR和Spring整合
- linux命令学习之(tail)
- 【3-1】MapReduce原理
- 70. Valid Sudoku
- VS2010快捷键大全
- Visio2010建立ER图并直接导出为SQL语句 .
- spring+dwr
- 汇编中一些标志位的含义
- TS流讲解--什么是ts流
- TabLayout+Fragment+ViewPager+FragmentStatePagerAdapter实现Tab标签
- LeetCode:Minimum Path Sum
- VS 2012 标配 Asp.net MVC 和 Entity Framework - mybatisnet 可能就显得路子野 了
- 勿忘初心
- Mac Android Studio 快捷键
- 阿里大鱼短信平台使用(Java)