`

web记录用户登出时间解决方案

 
阅读更多

2012-2-28


方案一

监听session摧毁

1.继承HttpSessionListener并实现sessionDestroyed方法

2.设置session过期最大值,一般为30分钟。

优点:容易实现

缺点:精度不高


方案二

页面中使用框架或ajax不停向服务发送请求

1.页面中利用js或框架间隔性向服务器发送请求

优点:精度较高 

缺点:代码容易混乱,影响并发性能


方案三

利用页面js监听关闭页面事件和给出登出按钮并限制只能单用户登录

1.在页面中使用例如onunload事件监听

2.在事件发生时对服务器发送关闭请求

3.点登出按钮也是向服务器发送登出请求

4.登录时将检查用户是否已经登录

优点:准确及时

缺点:不适合在用户多点同时登录情况


项目实践

一般会考虑不同方案的综合使用。个人比较喜欢将session监听和页面监听混合使用。

在记录时,会记录下不同情况的备注。如果是页面监听来关闭的,则记录正常登出。如果是session监听关闭的,则记录超时登出。可综合了记录不同情况的优点也避免了对性能的影响。

 

0
1
分享到:
评论

相关推荐

    java DWR实现一个用户在同一时间只能登录一次的解决方案

    本解决方案主要关注如何利用DWR来实现一个用户在同一时间只能登录一次的功能,类似于QQ的单点登录机制。 首先,我们需要理解DWR的基本工作原理。DWR允许JavaScript直接调用服务器端的Java方法,并将结果返回到...

    JSP和Struts应用系统用户退出的完美解决方案

    总的来说,JSP和Struts应用系统中实现用户退出的完美解决方案不仅包括清除Session和Cookie,还应考虑防止缓存,以及在需要时实施跨设备/窗口的登出策略。理解这些要点,有助于构建更加安全、用户友好的Web应用。

    ssh2-aop这是一个用来做登录、登出日志的系统

    综上所述,SSH2-AOP是一个整合了Spring、Struts和Hibernate的J2EE解决方案,利用AOP的强大功能来优雅地处理登录和登出的日志记录。这样的系统提高了代码的可维护性和可扩展性,同时保持了核心业务逻辑的清晰。在实际...

    数字化整网安全解决方案

    总的来说,【数字化整网安全解决方案】是一个全面的网络安全架构,它融合了认证、授权、审计、带宽管理、链路负载均衡等多种功能,旨在为用户提供安全、稳定且高效的网络环境,尤其适合于校园网络场景,以满足不同...

    完美解决ASP.NET网页在同一时刻仅被一个登录用户占用的方案例子代码

    9. `DisableDoubleLogin.sln`: 解决方案文件,用于Visual Studio中管理整个项目的结构和依赖关系。 10. `bin`: 这是编译后的二进制文件夹,包含了编译后的DLL和其他运行时库。 实现独占访问的步骤可能包括以下几点...

    Asp.net单点登录解决方案源码20121213

    7. **多应用集成**:SSO 解决方案需要考虑如何与多个不同应用系统集成,包括同步用户信息、权限管理以及错误处理。 8. **异常处理和日志记录**:为了便于调试和监控,源码中应包含适当的异常处理机制和详细的日志...

    PHP和MySQL Web开发第4版pdf以及源码

    9.6 创建一个Web用户 9.7 使用正确的数据库 9.8 创建数据库表 9.8.1 理解其他关键字的意思 9.8.2 理解列的类型 9.8.3 用SHOW和DESCRIBE来查看数据库 9.8.4 创建索引 9.9 理解MySQL的标识符 9.10 选择列数据...

    安防监控解决方案.docx

    安防监控解决方案 安防监控系统作为保障居民人生财产安全的有力措施,随着各地现代化建设和经济的快速发展,安防监控系统的需求不断增加。物盟科技凭借领先的云计算技术和视讯领域的丰富开发经验,针对安防监控市场...

    PHP和MySQL WEB开发(第4版)

    9.6 创建一个Web用户 9.7 使用正确的数据库 9.8 创建数据库表 9.8.1 理解其他关键字的意思 9.8.2 理解列的类型 9.8.3 用SHOW和DESCRIBE来查看数据库 9.8.4 创建索引 9.9 理解MySQL的标识符 9.10 选择列数据类型 ...

    完整版用户管理模块 1.3.rar

    通过记录用户的登录、登出、修改资料等行为,可以追踪异常活动,及时发现潜在的安全威胁。在1.3版本中,可能对日志系统进行了优化,提高了日志记录的详尽程度和分析效率。 此外,考虑到多语言支持和国际化的需求,...

    确保设计将在用户通过身份验证时更新模型上的.zip

    在Web开发中,Devise是一个常用的Ruby on Rails gem,用于实现灵活的身份验证解决方案。这里的"last_seen"可能指的是记录用户最后活动时间的功能。 Devise是一个强大的、可定制的身份验证库,它处理了密码加密、...

    防止用户重复登录

    许多成熟的Web开发框架,如Spring Security、Django、Express.js等,都提供了防止重复登录的解决方案,开发者可以根据实际需求选择合适的方法和技术进行实现。 总结,防止用户重复登录是现代应用程序中一个重要的...

    一个账号同一时间只能登录一次

    5. **跨域问题**:如果Web应用有多个子域名或者前端使用了不同的源,还需要考虑跨域会话管理,可能需要用到如JWT(JSON Web Token)或者基于Cookie的解决方案。 6. **数据库交互**:为了记录登录状态,通常需要与...

    PHP和MySQL Web开发第4版

    9.6 创建一个Web用户 9.7 使用正确的数据库 9.8 创建数据库表 9.8.1 理解其他关键字的意思 9.8.2 理解列的类型 9.8.3 用SHOW和DESCRIBE来查看数据库 9.8.4 创建索引 9.9 理解MySQL的标识符 9.10 选择列数据...

    关于同一用户不能同时登录文件下载

    标题中的“关于同一用户不能同时登录文件下载”指的是在某些系统或应用中,设计者为了保护用户账号安全和维护系统稳定性,通常会限制同一用户在同一时间只能在一个设备或浏览器会话上登录。这一策略被称为“单点登录...

    JSP毕业设计-JSPSmart系统-权限管理与日志记录模块的设计与开发(源代码+论文).zip

    论文是该项目的重要组成部分,应详细阐述设计思路、技术选型、具体实现过程、遇到的问题及解决方案,以及系统性能评估等内容。这有助于读者理解项目的全貌,也有助于提升开发者自身的理论素养。 总的来说,JSP...

    java_jsp项目源码_Smart系统-权限管理与日志记录模块的设计与开发(源代码+论文).rar

    它通过先进的权限控制算法和详尽的日志记录机制,为企业和组织提供了安全、可靠的管理解决方案。 在权限管理方面,Smart系统实现了用户、角色、权限的精细划分。系统内置了丰富的角色类型,如管理员、编辑、普通...

    腾讯云IM开放-WebSDK-微信小程序SDK

    腾讯云IM开放平台提供了一套完整的解决方案,包括WebSDK和微信小程序SDK,使得开发者能够方便地在自己的应用中集成即时聊天功能。 **一、腾讯云IM开放平台** 腾讯云IM开放平台是腾讯云推出的一款专业级的通讯服务...

    SS-TCDS-SUM-1.0 (E) 软件用户手册1

    TCDS微云盘系统是一个基于Web浏览器的云存储解决方案,支持个人、团队和小型组织使用。系统提供了注册、登录、文件上传与下载、文件搜索、在线预览、文件排序和权限管理等功能。其中,权限系统包括公开、组内和私有...

    集群式项目解决一个账号只能登录一次。

    这里我们探讨的是一种集群环境下的解决方案,它允许我们确保一个账号在同一时间只能在一个地方登录,即实现“单点登录”功能。这个方案主要基于Spring Boot和Redis技术栈来实施。 **Spring Boot** 是一种基于Java的...

Global site tag (gtag.js) - Google Analytics