返回顶部
首页 > 资讯 > 精选 >设置Session失效的几种方法分别是什么
  • 474
分享到

设置Session失效的几种方法分别是什么

2023-06-17 13:06:16 474人浏览 薄情痞子
摘要

本篇文章给大家分享的是有关设置Session失效的几种方法分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Session对象是httpsessionState的一个实例

本篇文章给大家分享的是有关设置Session失效的几种方法分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

Session对象是httpsessionState的一个实例。该类为当前用户会话提供信息,还提供对可用于存储信息会话范围的缓存的访问,以及控制如何管理会话的方法。下面介绍设置session失效的几种方法。

在系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session。
具体设置很简单,方法有三种:

(1)在主页面或者公共页面中加入:session.setMaxInactiveInterval(900);参数900单位是秒,即在没有活动15分钟后,session将失效。

这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。

(2)也是比较通用的设置session失效时间的方法,就是在项目WEB.xml中设置

<!-- 设置session失效,单位分 --> <session-config> <session-timeout>1</session-timeout> </session-config>

(3)直接在应用服务器中设置,如果是Tomcat,可以在tomcat目录下conf/web.xml中找到<session-config>元素,tomcat默认设置是30分钟,只要修改这个值就可以了。

需要注意的是如果上述三个地方如果都设置了,有个优先级的问题,从高到低:(1)>(2)>(3)

在一般系统中,也可能需要在session失效后做一些操作,

(1)控制用户数,当session失效后,系统的用户数减少一个等,控制用户数在一定范围内,确保系统的性能。

(2)控制一个用户多次登录,当session有效时,如果相同用户登录,就提示已经登录了,当session失效后,就可以不用提示,直接登录了。

那么如何在session失效后,进行一系列的操作呢?

这里就需要用到监听器了,即当session因为各种原因失效后,监听器就可以监听到,然后执行监听器中定义好的程序就可以了。

监听器类为:HttpSessionListener类,有sessionCreated和sessionDestroyed两个方法

自己可以继承这个类,然后分别实现。

sessionCreated指在session创建时执行的方法

sessionDestroyed指在session失效时执行的方法

给一个简单的例子:

public class SessionListener implements HttpSessionListener{   public void sessionCreated(HttpSessionEvent event) {   HttpSession ses = event.getSession();   String id=ses.getId()+ses.getCreationTime();   SummerConstant.UserMap.put(id, Boolean.TRUE); //添加用户   }   public void sessionDestroyed(HttpSessionEvent event) {   HttpSession ses = event.getSession();   String id=ses.getId()+ses.getCreationTime();   synchronized (this) {   SummerConstant.USERNUM--; //用户数减一   SummerConstant.UserMap.remove(id); //从用户组中移除掉,用户组为一个map   }   }   }

然后只需要把这个监听器在web.xml中声明就可以了

<listener>   <listener-class>   com.demo.SessionListener   </listener-class>   </listener>

以上就是设置Session失效的几种方法分别是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: 设置Session失效的几种方法分别是什么

本文链接: https://lsjlt.com/news/289155.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 设置Session失效的几种方法分别是什么
    本篇文章给大家分享的是有关设置Session失效的几种方法分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Session对象是HttpSessionState的一个实例...
    99+
    2023-06-17
  • 几种常用的C#排序方法分别是什么
    几种常用的C#排序方法分别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。这五种C#排序方法,其实在其他语言平台中也是常见的,因此C#排序方法也可以说是其他语言的排序方法,...
    99+
    2023-06-17
  • map遍历的几种方式分别是什么
    在Python中,有多种方式可以遍历一个字典(map)。以下是其中几种常见的方式:1. 使用for循环遍历键(key):```pyt...
    99+
    2023-08-25
    map
  • SAP freelancer接SAP项目的几种方法分别是什么
    本篇文章为大家展示了SAP freelancer接SAP项目的几种方法分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。SAP freelancer接SAP项目的几种方法根据这几年笔者找项目的...
    99+
    2023-06-05
  • php设置session时间的方法是什么
    PHP设置session时间的方法是通过在PHP代码中使用session_set_cookie_params()函数来设置。该函数用...
    99+
    2023-08-17
    session php
  • ThreadLocal的几种误区分别是什么
    这期内容当中小编将会给大家带来有关ThreadLocal的几种误区分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。JDK 1.2的版本中就提供java.lang.ThreadLocal,Threa...
    99+
    2023-06-17
  • 设置session有效时间的三种方式
    目录设置session有效时间的三种方式方法一方法二方法三session详细解析(是否过期、失效时间)总结设置session有效时间的三种方式 session的默认有效时间是30分钟...
    99+
    2023-05-19
    设置session有效时间 设置session时间 session时间设置
  • php有几种数组初始化方法 分别是什么
    PHP是一种广泛应用于Web开发的脚本语言,它的数组有多种初始化方式。本文将介绍PHP数组的不同初始化方法并进行详细说明。一、定义一个空数组空数组是最简单的初始化方式,它可以使用以下方式进行:$array = array();或$array...
    99+
    2023-05-22
  • JfreeChart生成图片的几种方式分别是什么
    JfreeChart生成图片的几种方式分别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。下面主要介绍JfreeChart生成图片的几种方式。先从网上找点介绍。一、简介...
    99+
    2023-06-17
  • JVM调优的几种策略分别是什么
    这期内容当中小编将会给大家带来有关JVM调优的几种策略分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。JVM参数调优是一个很头痛的问题,可能和应用有关系,别人说可以的对自己不一定管用。下面是本人一...
    99+
    2023-06-17
  • javascript中内置了两种json方法分别是什么
    这篇文章将为大家详细讲解有关javascript中内置了两种json方法分别是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。javascript中内置了两种json方法:1、“JSON.parse()...
    99+
    2023-06-14
  • css3的三种使用方法分别是什么
    这篇文章给大家介绍css3的三种使用方法分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。css3的三种使用方法:1、内联样式,语法为“<元素 style="cs...
    99+
    2024-04-02
  • Linux环境变量配置的6种方法分别是什么
    这篇文章给大家介绍Linux环境变量配置的6种方法分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Linux环境变量配置在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法。下面所有...
    99+
    2023-06-26
  • 删除MS JVM的几种途径分别是什么
    今天就跟大家聊聊有关删除MS JVM的几种途径分别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。这里向大家描述一下如何删除MS JVM,这里有几种常用的方法和大家分享一下,相信...
    99+
    2023-06-17
  • Python函数中的几种参数分别是什么
    这期内容当中小编将会给大家带来有关Python函数中的几种参数分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.必需的参数:必须参数须以正确的顺序传入函数,调用的数量必须和声明时的一样def&n...
    99+
    2023-06-21
  • Python字典中dict几种遍历方式分别是什么
    这期内容当中小编将会给大家带来有关Python字典中dict几种遍历方式分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.使用 for key in dict遍历字典可以使用for key in...
    99+
    2023-06-25
  • php怎么设置session时间?两种方式分享
    在使用PHP编写Web应用程序时,session管理是非常重要的。在很多情况下,session是跟踪用户网站操作的一种方式。在默认情况下,PHP的session会话会在浏览器关闭后销毁。然而,在许多应用程序中,需要在特定时间或用户不活动一段...
    99+
    2023-05-14
    php session
  • Centos7临时或永久禁用ping命令的几种方法分别是什么
    今天就跟大家聊聊有关Centos7临时或永久禁用ping命令的几种方法分别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。有些朋友可能会发现,当ping某台服务器的IP时,可能会...
    99+
    2023-06-05
  • 在oracle中跟踪会话执行语句的几种方法分别是什么
    这期内容当中小编将会给大家带来有关在oracle中跟踪会话执行语句的几种方法分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。生成sql trace可以有以下几种方式:参数设置:非常传统的方法。系统...
    99+
    2023-06-06
  • 3种编写Python的好方法分别是什么
    今天就跟大家聊聊有关3种编写Python的好方法分别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。这里小芯就给大家推荐3种编写Python的好方法,它们能帮你成为更好的程序员。...
    99+
    2023-06-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作