session 失效一个判断session是否过期的小技巧

session 失效  时间:2022-02-24  阅读:()

一个判断session是否过期的小技巧

接触jspo已经很久了,但是还真没有想过这个问题,当时也就没有找到一个满意的答案给人家。 当时,我提到一个方法,就是实现HttpSessionListener接口,然后在sessionDestroyed()方法中执行一些操作,表示session要过期了,因为这个方法是session.invalidate()之前监听器调用的方法。这个判断的方法显然不能让人满意。 我当时问了些人,但是也没有得到一个准确的答案。 正好偶然间看到,request.getSeesion(boolean)方法,一下子让我恍然大悟。这个方法里面传了一个boolean值,这个值如果是true,那么如果当前的request的session不可用,那么就创建新的会话,如果存在就返回当前的会话。如果参数是false,那么在request的当前会话不存在的时候就返回null。 这样我们就可以很容易的联想到这个所谓的request的当前会话是否存在和session过期的联系,所以我们就可以;近似地”认为session不存在就是session过期了,那么我们就可以很容易地判断session是否过期了。方法如下: if(request.getSession(false)==null)    System.out.println("Session has been invalidated!");;else   System.out.println("Session is active!");; 可能大家注意到我上面有一个;近似地”字眼,也就是说存在特别情况。 这个特殊情况就是第一次请求还没有创建会话的时候,那么用这个方法返回的仍然是null,原因我想大家应该是显然的。 以上是个人拙见,希望大家指正。 if(request.getSession(false)==null){    sessin = request.getSession(true);;}private boolean checkSession(HttpServletRequest request, HttpServletResponse response) { HttpSession session = request.getSession(false);;//////////String requestURI = request.getRequestURI();; String contextPath = request.getContextPath();; requestURI = requestURI.substring(contextPath.length());; if(requestURI.equals("/") || requestURI.equals("/login.jsp") || requestURI.equals("/login.do")|| requestURI.equals(this.errorPage)) return true;; if(session != null && session.getAttribute(this.objName) != null

GreenCloudVPS$20/年多国机房可选,1核@Ryzen 3950x/1GB内存/30GB NVMe/10Gbps端口月流量2TB

GreencloudVPS此次在四个机房都上线10Gbps大带宽VPS,并且全部采用AMD处理器,其中美国芝加哥机房采用Ryzen 3950x处理器,新加坡、荷兰阿姆斯特丹、美国杰克逊维尔机房采用Ryzen 3960x处理器,全部都是RAID-1 NVMe硬盘、DDR4 2666Mhz内存,GreenCloudVPS本次促销的便宜VPS最低仅需20美元/年,支持支付宝、银联和paypal。Gree...

Digital-vm80美元,1-10Gbps带宽日本/新加坡独立服务器

Digital-vm是一家成立于2019年的国外主机商,商家提供VPS和独立服务器租用业务,其中VPS基于KVM架构,提供1-10Gbps带宽,数据中心可选包括美国洛杉矶、日本、新加坡、挪威、西班牙、丹麦、荷兰、英国等8个地区机房;除了VPS主机外,商家还提供日本、新加坡独立服务器,同样可选1-10Gbps带宽,最低每月仅80美元起。下面列出两款独立服务器配置信息。配置一 $80/月CPU:E3-...

Hosteons - 限时洛杉矶/达拉斯/纽约 免费升级至10G带宽 低至年$21

Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...

session 失效为你推荐
showwindowShowWindow和EnableWindow区别tvosTVOS推广怎么样?色库石伟伟怎么写啊booth算法用Booth算法计算-4×3的4位补码乘法运算,要求写出每一步运算过程及运算结果 麻烦详细说明每一步的操作qq业务中心QQ业务办理新手怎么制作表格我是初学者、电脑上怎么制作表格文件系统类型文件系统的类型是FAT32 /C选项只在NTFS卷上起作用 的意思数学作业不知道数学作业怎么办?工作日志系统工作记录软件有哪些微信客服在线咨询微信人工电话是什么
免备案虚拟主机 tk域名注册 网站域名备案查询 x3220 美国主机评测 免费主机 mach5 老左博客 godaddy域名优惠码 中国特价网 共享主机 南通服务器 服务器合租 中国电信测速网 hkt 爱奇艺vip免费领取 流媒体加速 国外视频网站有哪些 域名dns 国外网页代理 更多