`
baobeituping
  • 浏览: 1065108 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

DWR实现的在线聊天室处理用户在任务栏关闭页面,怎么判断用户的在线状态

阅读更多

在聊天室里,用户可以通过浏览器关闭按钮,双击浏览器标签栏等直接退出聊天室。这些动作都可以通过JS来捕捉到。

但是用户如果将浏览器最小化到任务栏,然后右键关闭浏览器,就捕捉不到关闭事件了,那么程序将一直保存该用户一直在线。

我的处理思路是:

通过DWR写一个收集所有在线用户的方法,该方法收集所有开着聊天室页面的用户ID,保存在一个集合中。然后将该集合替换掉原来保存用户的集合,再刷新所有聊天室的客户端页面。

 

该方法的调用时机:当某一客户端登录后,通过setTimeOut方法设置一个延迟加载函数,该函数就去调用DWR的方法。

这样,就由客户端触发清理用户的操作。从而保证只要有用户登录,那么就会对当前聊天室的成员就行清理。

 

缺点。不能及时更新所有聊天室成员。

优点。不用实时去刷新服务器,减轻服务器段压力。

分享到:
评论

相关推荐

    采用dwr技术实现的聊天室

    - **Chat2.java**: 这是服务器端的Java类,实现了处理聊天室逻辑的业务方法,如接收和发送消息,以及管理在线用户列表。 - **dwr.xml**: 这是DWR的配置文件,定义了哪些Java方法可以被客户端调用,以及相关的安全...

    java+dwr框架实现聊天室

    Java+dwr 框架实现聊天室 Java+dwr框架实现聊天室是使用Java语言和dwr框架实现的服务器推技术,实现了实时通信的聊天室功能。下面将详细介绍该技术的实现过程和相关知识点。 一、dwr 框架简介 dwr(Direct Web ...

    jsp DWR框架推模式实现的聊天室

    在本项目"jsp DWR框架推模式实现的聊天室"中,我们将探讨如何利用DWR的推送(Push)模式来构建一个实时的在线聊天应用。** 首先,我们需要了解DWR的基本工作原理。DWR通过在浏览器和服务器之间建立一个持久连接,...

    spring+dwr无刷新聊天室

    3. **通信过程**:用户在浏览器中输入消息,JavaScript通过DWR调用服务器端的添加消息方法,服务器处理后将新的聊天记录返回给客户端,更新聊天界面。 4. **数据持久化**:通常,聊天记录会存储在数据库中,以便于...

    DWR实现聊天室demo

    2. **点对点发送**:在聊天室中,用户可以通过DWR调用服务器上的发送消息方法,指定接收者,服务器处理后将消息推送给特定的用户。 3. **多对多发送**:若要实现群聊功能,服务器端可以维护一个频道模型,所有订阅...

    DWR在线即时聊天系统,实现了对指定用户发送消息,和即时显示功能

    在这个在线即时聊天系统中,DWR被用来创建一个高效、用户友好的通信层,使得客户端(通常是浏览器中的JavaScript)能够直接调用服务器端的Java方法,就像它们是本地函数一样。这种技术极大地简化了AJAX...

    dwr实现的网页即时聊天

    每个用户都能即时看到其他用户发送的消息,这需要在服务器端维护一个聊天室状态,并通过DWR将新消息推送给所有在线用户。 6. **DWR配置与集成**: 首先,需要在项目中引入DWR库,然后配置DWR的`dwr.xml`文件以暴露...

    dwr实现聊天室+级连+搜索提示

    为了实现这一点,我们需要在服务器端设置DWR配置,创建一个处理聊天消息的Java类,并在客户端编写JavaScript代码来捕获用户输入并触发消息发送。 2. **级联(Cascade)功能**: 在这个项目中,“级联”可能指的是...

    dwr 的网页聊天室demo

    在这个"网页聊天室Demo"中,我们将深入探讨DWR如何用于创建实时交互的在线聊天应用。 首先,我们要理解DWR的基本工作原理。DWR的核心是通过在服务器端创建Java对象,并暴露这些对象的方法给客户端JavaScript调用。...

    DWR 在线即时聊天系统,实现了对指定用户发送消息,和即时显示功能.rar

    DWR 在线即时聊天系统,实现了对指定用户发送消息,和即时显示功能.rarDWR 在线即时聊天系统,实现了对指定用户发送消息,和即时显示功能.rarDWR 在线即时聊天系统,实现了对指定用户发送消息,和即时显示功能.rarDWR 在线...

    dwr在线聊天室,实时推送

    dwr 在线聊天室demo,实现在线聊天实时刷新技术。里面还有 3三个demo 有dwr+spring ,dwr+struts2 ,纯dwr. 只有charForDemo这个工程能用! 其他的可以参考一下,有问题QQ woshilouhefeng@vip.com ,QQ:652550936(这...

    DWR jquery 聊天室 SSH

    在聊天室的实现过程中,通常会有一个服务器端的组件(可能是由 DWR 提供的)来处理用户的登录、消息存储和广播。一旦用户成功登录,DWR 将在后台运行,监听来自客户端的消息并将其推送给其他在线用户。同时,SSH 会...

    jsp+dwr做的聊天室

    在聊天室中,DWR可能被用来实现实时的消息传递,每当有新的消息发布,服务器会立即通知客户端,无需用户手动刷新页面。 【数据库】是存储聊天数据的关键组件。在这个聊天室应用中,数据库可能存储用户的登录信息、...

    spring3+dwr3实现聊天功能

    在聊天应用中,Spring可以处理用户认证、事务管理、服务层逻辑和数据持久化等任务。 DWR3则是一个JavaScript库,允许Web页面与服务器进行实时通信,无需刷新页面。它通过AJAX技术实现了浏览器与服务器之间的直接...

    java dwr技术多人聊天室

    它允许JavaScript在客户端与服务器端进行直接的调用,从而实现了动态、实时的Web页面更新,非常适合构建像多人聊天室这样的实时应用。在这个场景中,用户可以即时发送和接收消息,实现多人同时在线交流。 SSH...

    用DWR的comet推,实现多人聊天室

    - 在聊天室的实现中,需要一个后台服务来处理用户的输入,存储消息,并将消息广播给所有连接的客户端。 - 客户端JavaScript代码需要注册事件监听器,接收来自服务器的推送消息,并在页面上显示。 5. **性能和优化...

    基于DWR推送的web聊天系统

    【基于DWR推送的Web聊天系统】是一种利用Direct Web Remoting (DWR) 技术构建的实时交互式在线聊天应用。DWR是一款开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行直接通信,实现了AJAX(异步...

    dwr实现用户ID的唯一性验证

    DWR(Direct Web Remoting)是一种Java库,它允许JavaScript在客户端与服务器端进行交互,实现了AJAX(Asynchronous JavaScript and XML)的功能,无需页面刷新即可实现数据的动态更新和提交。DWR使得Web应用程序...

    纯JSP+DWR实现三级联动下拉选择菜单 实现无刷新联动 DWR判断用户是否存在 ajax二级联动菜单 DWR操作数据库模拟实现Google搜索效果

    DWR是一种JavaScript库,它使得在浏览器和服务器之间进行异步通信变得更加简单,从而实现页面的动态更新而无需刷新整个页面。 **一、DWR三级联动下拉菜单** 在Web应用中,三级联动下拉菜单常用于地理信息选择,如...

    Ajax DWR聊天室

    在"Ajax DWR聊天室"项目中,用户可以在不刷新整个页面的情况下发送和接收消息,从而实现实时聊天功能。这个应用可能包含以下几个关键组件: 1. **用户界面**:使用HTML和CSS构建,可能包含一个输入框供用户输入消息...

Global site tag (gtag.js) - Google Analytics