`

由Strust2 session过期引起的问题

 
阅读更多

ServletActionContext.getRequest().getSession( false ) 如果获取不到session则返回null

ServletActionContext.getRequest().getSession(  ) 等同于 ServletActionContext.getRequest().getSession(true  ) 如果没获取到session则会自动产生一个新的session

 

在实际应用中,一般情况下使用 ServletActionContext.getRequest().getSession(  ),是没有问题的,前提是在session过期前,在整个程序中获取得到是同一个session,如果session过期测会重新产生一个新session,在应用中这个新的session是没保存到你之前设置的值,同时你需要重新登录,但新登录的session的id 与过期后产生的session共存,并且Id不一样。会导致在两个页面有不同的session,这就是程序隐藏的bug

 

所以用ServletActionContext.getRequest().getSession( false ) .getAttribute("xx");

分享到:
评论

相关推荐

    Struts2中的session用法

    Struts2 中的 Session 用法 Struts2 框架中,Session 是一个非常重要的概念,它允许开发者在服务器端存储一些数据,以便在多个请求之间共享这些数据。在 Struts2 中,Session 的使用主要通过实现 SessionAware 接口...

    struts2_session_权限检查并控制重复登录源码

    本资源"struts2_session_权限检查并控制重复登录源码"提供了一个具体的实现方案,下面我们将深入探讨相关的知识点。 1. **Struts2框架**:Struts2是Apache软件基金会下的一个开源项目,它基于MVC设计模式,提供了...

    简单的struts2拦截器利用session拦截用户登录.docx

    通过这样的配置,Struts2框架会在执行任何需要登录的Action之前,先检查用户是否已经登录(通过Session中的 `systemUser` 对象)。如果未登录,会重定向到登录页面。这种方式可以有效地保护应用程序的资源,防止未...

    Struts2访问request,session,application的四种方式

    在Struts2中,有四种主要的方式可以用来操作request、session和application上下文中的数据。这篇内容将深入探讨这四种方法,并结合源码和实用工具来帮助理解。 1. **ActionContext**: Struts2的核心组件...

    struts2中request和session的获取

    在Struts2框架中,对request和session的管理和获取是实现Web应用中用户交互和状态维护的重要手段。本文将深入探讨Struts2中如何获取request和session,以及这两种对象的作用和应用场景。 ### Struts2框架简介 ...

    JavaEE Struts2利用tokenSession防止重复提交

    Struts2提供了一种机制,即tokenSession,来解决这个问题。 首先,我们要理解什么是重复提交。在Web环境中,由于网络延迟或用户误操作,可能会导致同一个表单数据被多次提交,这就是重复提交。这种现象可能导致数据...

    struts2访问application、session以及request等web资源的示例代码

    在Struts2中,访问Web资源,如application、session和request,是常见的操作,这有助于实现数据共享和传递。本示例代码将帮助开发者更好地理解和运用这些功能。 一、Application域对象 Application域对象在所有用户...

    Struts2 的Action使用session的方法

    下面将详细讲解如何在Struts2的Action中使用session。 首先,理解session的基本概念。在Web开发中,session是一种服务器端存储用户状态的方式。当用户打开浏览器访问网站时,服务器会为该用户分配一个唯一的session...

    struts2访问request,session,application作用域

    ### Struts2 访问 Request、Session 和 Application 作用域详解 #### 一、引言 Struts2 是一个基于 Java 的开源 Web 开发框架,它继承了 Struts1 的优秀特性并进行了改进,提供了更加灵活和强大的功能。在 Struts2...

    Struts2的Action中获得request response session几种方法

    以下将详细介绍如何在Struts2的Action中获取request、response、session。 ### 1. 使用ActionContext获取request、response、session Struts2的Action可以通过`ActionContext`来间接获取`request`、`response`和`...

    STRUTS2获得session和request

    在探讨STRUTS2框架中如何获取session和request这一核心知识点时,我们首先需要理解STRUTS2框架的运行机制以及session与request在Web开发中的基础概念。 ### STRUTS2框架简介 STRUTS2是Apache软件基金会下的一个...

    Struts2漏洞检查工具Struts2.2019.V2.3

    "Struts2漏洞检查工具Struts2.2019.V2.3"是一个专门针对这些漏洞进行检测的工具,旨在帮助开发者和网络安全专业人员识别并修复Struts2框架中的安全问题。 Struts2的安全漏洞主要包括以下几类: 1. OGNL(Object-...

    struts2简单例子

    Struts2是一个强大的Java EE应用程序框架,用于构建MVC(模型-视图-控制器)架构的Web应用。这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识...

    struts2-core.jar

    struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...

    struts2 API帮助文档

    Struts2是一个强大的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。这个API帮助文档是开发者在使用Struts2框架时的重要参考资料,它详细阐述了框架的各种组件、类库和方法,有助于理解并有效...

    Struts2实现检查用户是否登录

    本文将深入探讨如何使用Struts2结合session来实现用户登录检查。 首先,我们需要理解session的概念。在Web开发中,session是一种服务器端存储用户状态的方式。当用户登录后,服务器会为该用户创建一个session,并将...

    struts2 获取request

    struts2 获取request session对象

    马士兵Struts2笔记2013

    在某些版本的Struts2中,可能出现处理中文字符集的问题。这可能需要配置应用服务器或web.xml以指定正确的字符编码,如设置`<filter>`和`<filter-mapping>`元素以使用UTF-8编码。 5. **Struts模块包含** Struts2...

    jsp,struts,EL,session等注意总结集合

    JSP和Struts组合提供了动态网页和业务逻辑的处理能力,EL简化了页面表达,Session保证了用户会话的连贯性,JavaMail实现了邮件功能,而Eclipse作为开发工具,提高了开发效率和代码质量。学习并熟练运用这些技术,能...

Global site tag (gtag.js) - Google Analytics