`

Struts2中获取HttpServletRequest,HttpSession

阅读更多

在没有使用Struts2之前,都习惯使用HttpServletRequest和HttpSession对象来操作相关参数,下面介绍一下在Struts2中访问隐藏的HttpServletRequest和HttpSession的两种方法:

1.非Ioc方式

这种方式主要是利用了com.opensymphony.xwork2.ActionContext类以及ora.apache.struts2.ServletActionContext类,具体的方法如下所示。

获得request对象:

1).HttpServletRequest request = ServletActionContext.getRequest ();

2).ActionContext ct= ActionContext.getContext();

   HttpServletRequest request=

(HttpServletRequest)ct.get(ServletActionContext.HTTP_REQUEST);

获得session对象:

在Struts2中底层的session都被封装成了Map类型,我们称之为SessionMap,而平常我们所说的session则是指HttpSession对象,具体的获得方法如下所示。

1).Map session=ActionContext.getSession();

2).Map session=(Map)ActionContext.getContext().get(ActionContext.SESSION);

得到这个SessionMap之后我们就可以对session进行读写了,如果我们想得到原始的HttpSession可以首先得到HttpServletRequest对象,然后通过request.getSession()来取得原始的HttpSession对象。一般情况下SessionMap已经可以完成所有的工作,我们不必再去强行使用底层的session了。


文章出处:http://www.diybl.com/course/3_program/java/javajs/2008830/138844.html

分享到:
评论

相关推荐

    struts2中request和session的获取

    本文将深入探讨Struts2中如何获取request和session,以及这两种对象的作用和应用场景。 ### Struts2框架简介 Struts2是基于Java Servlet API的一个开源MVC(Model-View-Controller)框架,它提供了强大的功能来...

    ActionContext介绍(在Struts2中)

    总结来说,ActionContext和ServletActionContext是Struts2中处理请求和响应的关键工具,它们提供了方便的方式来访问和操作HTTP请求、会话以及应用上下文中的数据,是理解Struts2工作原理的重要组成部分。正确使用这...

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

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

    struts2中action如何获取jsp页面参数1.pdf

    本篇将详细讲解Struts2中Action如何获取JSP页面参数以及相关上下文对象的使用。 1. **ActionContext** - ActionContext是Struts2框架中执行Action时的上下文环境,它是一个存储各种对象的容器,主要包含了请求...

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

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

    Struts2在Action中获得Response对象的四种方法

    下面我们将详细介绍在Struts2中,Action类获取Response对象的四种方法。 **方法 1:使用Struts2 Aware拦截器** 此方法基于Struts2的拦截器机制,让Action类实现`ServletResponseAware`接口。通过这个接口,Struts2...

    struts2配置过滤器

    本文将通过一个具体的示例来详细介绍如何在Struts2项目中配置过滤器。 #### 二、过滤器配置实例分析 ##### 2.1 web.xml配置解析 在给定的web.xml配置文件中,可以看到对`SessionInvalidate`过滤器进行了定义和...

    struts2 中action 如何获取jsp 页面参数1.pdf

    总的来说,在Struts2中,通过`ActionContext`和`ServletActionContext`,开发者可以方便地获取并处理JSP页面传递的参数,以及与Servlet相关的各种对象,以实现灵活的业务逻辑控制。正确理解和使用这两个类对于编写...

    struts2源码解析.pdf

    - Struts2标签库简化了视图层的开发,这些标签通常与OGNL表达式结合使用,动态地从ValueStack中获取或设置数据。 - OGNL是一种强大的表达式语言,允许在Action实例、ValueStack和视图层之间灵活地进行数据绑定和...

    struts2 ognl的用法

    ### Struts2中OGNL的使用详解 #### 一、OGNL简介 OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取或设置一个对象图中的属性。它在Struts2框架中扮演着极其重要的角色,是Struts2实现...

    STRUTS2获得作用域、参数响应对象及三种符号说明

    在Struts2中,`session`对象通常被封装成`SessionMap`的形式。获取`SessionMap`对象的方法有: ```java // 方法A Map session = ActionContext.getSession(); // 方法B Map session = (Map) ActionContext....

    struts2配置文件以及代码示例

    在Struts2中,配置文件扮演着至关重要的角色,它定义了应用的行为、组件之间的交互逻辑以及各种资源的映射关系。 #### 二、Struts2配置文件详解 **配置文件格式:** Struts2配置文件通常以`struts.xml`命名,采用...

    Struts2的总结和Strut2集成Spring

    #### Struts2中获取request、response和session对象 在Struts2中,可以通过注入的方式直接在Action中使用`HttpServletRequest`, `HttpServletResponse`和`HttpSession`对象,无需手动从Servlet API中获取。这简化了...

    牧紫小岩的Struts2学习笔记

    在Struts2中访问Web内置对象如HttpServletRequest、HttpSession和ServletContext有多种方式。可以通过`ActionContext.getContext()`获取,也可以通过实现`RequestAware`、`SessionAware`、`ApplicationAware`接口来...

    Struts2教程:获得HttpServletResponse对象

    总结来说,在Struts2中获取`HttpServletResponse`对象主要通过实现`ServletResponseAware`接口来完成,这为开发者提供了更灵活的方式来处理HTTP响应。同时,Struts2提供的其他`Aware`接口也极大地丰富了Action的功能...

    Struts2面试题

    #### 四、访问`HttpServletRequest`、`HttpSession`、`ServletContext`的方法 1. **解耦访问方式**: - 通过`ActionContext`访问这些域对象对应的Map对象。 - 实现`Aware`接口,让Struts2注入对应的Map对象。 2. ...

Global site tag (gtag.js) - Google Analytics