社区
Web 开发
帖子详情
JAVA怎么样实现即时消息提醒?
水墨画
2009-12-29 05:05:58
JAVA怎么样实现即时消息提醒?
如题,要求性能高。高手帮忙!
问题补充:说说思路也行,如果有实例就更好。
采用B/S架构。
使用STRUTS+SPRING+HIBERNATE,
就象小秘书的那类即时消息,即:当A向B发送消息后,B收到消息后会有所提示。
这样B就不用实时的打开网页,就可以看到是否有新的任务.
注:不需要B来回复消息,只要B能看到有新消息就可以了.
...全文
6806
47
打赏
收藏
JAVA怎么样实现即时消息提醒?
JAVA怎么样实现即时消息提醒? 如题,要求性能高。高手帮忙! 问题补充:说说思路也行,如果有实例就更好。 采用B/S架构。 使用STRUTS+SPRING+HIBERNATE, 就象小秘书的那类即时消息,即:当A向B发送消息后,B收到消息后会有所提示。 这样B就不用实时的打开网页,就可以看到是否有新的任务. 注:不需要B来回复消息,只要B能看到有新消息就可以了.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
47 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liuxiaofeigoodluck
2012-02-07
打赏
举报
回复
最好是使用jms服务来做
dafa1892
2011-01-06
打赏
举报
回复
dwr 应该行
莫宗毅
2010-11-15
打赏
举报
回复
学习了呀,一直在找这方面的解决方案,先回去研究一下,再来发言
小沙同歇
2010-06-23
打赏
举报
回复
我在做一个及时提醒的一个模块
这个地方我初次涉及,不知道该怎么下手
希望高手们赐教
(该模块实现备忘功能,定时提醒 ,和有信息提醒)
email:sqjhwl@163.com
zhangjun460
2010-04-30
打赏
举报
回复
怎么办 我也想知道
teemai
2010-01-02
打赏
举报
回复
学习到了。
enxiuwang
2010-01-02
打赏
举报
回复
comet就是楼主要的答案,但如果理解了它的原理,这个功能可以自己写,原理:
1、浏览器向服务器发一个请求
2、服务器接到请求后在servlet或struts的Action中用线程将这个请求休眠,使服务器不直接响应结束,这样浏览器与服务器就建立了一个长连接,这是即时通信的基础。
3、设置response的属性,使其可以多次响应,这样只要有人给它消息,就可以out一句话,这句话是个script代码,浏览器就收到消息了。
junyun414
2010-01-02
打赏
举报
回复
前不久做了个聊天的,我问了一些人,人家也是说用AJAX定时刷的,几个人用的话是可以,就是不知道人多了用可不可以,我也没有测
limiao_java
2010-01-01
打赏
举报
回复
写一个方法检查是否有新信息的 (method A)
然后循环递归调用
如果发现有新信息则调用查询信息的方法(method B)
,成功之后再去调用(method A)
hongjn
2010-01-01
打赏
举报
回复
帮顶
cwhqt
2010-01-01
打赏
举报
回复
HTTP轮询
longforblossom
2010-01-01
打赏
举报
回复
ajax定时发送请求 太多了 会不会影响性能?
没有一种类似监听的方式么?
学习,,,
lihui820905
2009-12-31
打赏
举报
回复
我也去了解了下comet,发现此架构是可以实现楼主的要求的
lihui820905
2009-12-31
打赏
举报
回复
[Quote=引用 34 楼 javaalpha 的回复:]
引用 16 楼 lihui820905 的回复:
第一,java实现即时消息提醒方法很多。
第二,B/S架构就没办法即时。这是B/S架构本身决定的(请求-响应模式),服务器不会主动推送消息给客户端的。所以只能是客户端定时去向服务器取消息。所以上面大家说的ajax是目前流行的做法
轮询数据库
[/Quote]
不明白,请赐教。轮询数据库就可以主动向浏览器客户端发消息了?
JavaAlpha
2009-12-31
打赏
举报
回复
[Quote=引用 16 楼 lihui820905 的回复:]
第一,java实现即时消息提醒方法很多。
第二,B/S架构就没办法即时。这是B/S架构本身决定的(请求-响应模式),服务器不会主动推送消息给客户端的。所以只能是客户端定时去向服务器取消息。所以上面大家说的ajax是目前流行的做法
[/Quote]
轮询数据库
水墨画
2009-12-31
打赏
举报
回复
顶
cserbaby
2009-12-30
打赏
举报
回复
[Quote=引用 11 楼 wwttyy 的回复:]
不想让用户一直开着网页,而是想,采用一个类似于QQ一样的,登录完是放小在状态栏的,有消息时有闪动,然后用户就可以打开看到,
[/Quote]
楼主这个想法在纯B/S下是不可能实现的,这是由B/S本身据决定的(楼上已经有人作了原因分析)
如果楼主一定要实现类似效果的话,那就肯定得写一个客户端,用来捕获服务端消息,然后再把这个消息弹出来即可.
peanut942692
2009-12-30
打赏
举报
回复
关注
Ak混子113
2009-12-30
打赏
举报
回复
setInterval + Ajax
lihui820905
2009-12-30
打赏
举报
回复
第一,java实现即时消息提醒方法很多。
第二,B/S架构就没办法即时。这是B/S架构本身决定的(请求-响应模式),服务器不会主动推送消息给客户端的。所以只能是客户端定时去向服务器取消息。所以上面大家说的ajax是目前流行的做法
加载更多回复(27)
java
web
即时消息
提醒
comet4j demo
这是一个
java
servlet写的
即时消息
提醒
例子,里面包括了comet4j需要的jar包和JS 需要对tomcat进行一下配置,把server.xml里端口配置里添加上protocol="org.apache.coyote.http11.Http11NioProtocol"
java
开源包3
Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。
Java
扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends
java
.applet.Applet 简单
实现
!~ 网页表格组件 GWT Advanced Table GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可
实现
分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标
java
开源包5
Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。
Java
扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends
java
.applet.Applet 简单
实现
!~ 网页表格组件 GWT Advanced Table GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可
实现
分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以直接在你的网页里面显示搜查的结果。 github-
java
-api github-
java
-api 是 Github 网站 API 的
Java
语言版本。
java
缓存工具 SimpleCache SimpleCache 是一个简单易用的
java
缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. 支持混合使用redis缓存和memcached缓存。可以将列表数据缓存到redis中,其他kv结构数据继续缓存到memcached 6. 支持redis的主从集群,可以做读写分离。缓存读取自redis的slave节点,写入到redis的master节点。
Java
对象的SQL接口 JoSQL JoSQL(SQLfor
Java
Objects)为
Java
开发者提供运用SQL语句来操作
Java
对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何
Java
对象集进行查询,排序,分组。 搜索自动提示 Autotips AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene
实现
。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于
Java
的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。
Java
注册表操作类 jared jared是一个用来操作Windows注册表的
Java
类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列的数字图像。使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。
Java
的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的
Java
开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的
Java
客户端 JOpenID JOpenID是一个轻量级的OpenID 2.0
Java
客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor 的文件持久化组件,以及一个高吞吐量的可靠事务日志组件。 Google地图JSP标签库 利用Google:maps JSP标签库就能够在你的Web站点上
实现
GoogleMaps的所有功能而且不需要
java
script或AJAX编程。它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth
实现
框架 Agorava Agorava 是一个
实现
了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的
Java
Script插件 JSEditor JSEditor 是 Eclipse 下编辑
Java
Script 源码的插件,提供语法高亮以及一些通用的面向对象方法。
Java
数据库连接池 BoneCP BoneCP 是一个高性能的开源
java
数据库连接池
实现
库。它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K
java
开源包1
Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。
Java
扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends
java
.applet.Applet 简单
实现
!~ 网页表格组件 GWT Advanced Table GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可
实现
分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以直接在你的网页里面显示搜查的结果。 github-
java
-api github-
java
-api 是 Github 网站 API 的
Java
语言版本。
java
缓存工具 SimpleCache SimpleCache 是一个简单易用的
java
缓存工具,用来简化缓存代码的编写,让你摆脱单调乏味的重复工作!1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. 支持混合使用redis缓存和memcached缓存。可以将列表数据缓存到redis中,其他kv结构数据继续缓存到memcached 6. 支持redis的主从集群,可以做读写分离。缓存读取自redis的slave节点,写入到redis的master节点。
Java
对象的SQL接口 JoSQL JoSQL(SQLfor
Java
Objects)为
Java
开发者提供运用SQL语句来操作
Java
对象集的能力.利用JoSQL可以像操作数据库中的数据一样对任何
Java
对象集进行查询,排序,分组。 搜索自动提示 Autotips AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene
实现
。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于
Java
的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。
Java
注册表操作类 jared jared是一个用来操作Windows注册表的
Java
类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列的数字图像。使用简便和直截了当,用户只需要加载的图片和调整帧您想要的,如位置,时间显示和处理方法前帧。
Java
的PList类库 Blister Blister是一个用于操作苹果二进制PList文件格式的
Java
开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的
Java
客户端 JOpenID JOpenID是一个轻量级的OpenID 2.0
Java
客户端,仅50KB+(含源代码),允许任何Web网站通过OpenID支持用户直接登录而无需注册,例如Google Account或Yahoo Account。 JActor的文件持久化组件 JFile JFile 是 JActor 的文件持久化组件,以及一个高吞吐量的可靠事务日志组件。 Google地图JSP标签库 利用Google:maps JSP标签库就能够在你的Web站点上
实现
GoogleMaps的所有功能而且不需要
java
script或AJAX编程。它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth
实现
框架 Agorava Agorava 是一个
实现
了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的
Java
Script插件 JSEditor JSEditor 是 Eclipse 下编辑
Java
Script 源码的插件,提供语法高亮以及一些通用的面向对象方法。
Java
数据库连接池 BoneCP BoneCP 是一个高性能的开源
java
数据库连接池
实现
库。它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。BoneCP很小,只有四十几K
java
开源包2
Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。
Java
扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends
java
.applet.Applet 简单
实现
!~ 网页表格组件 GWT Advanced Table GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可
实现
分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标
Web 开发
81,122
社区成员
341,744
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章