`

struts2的action中使用session的方法

阅读更多
在Struts2里,如果需要在Action中使用session,可以通过下面两种方式得到
1.通过ActionContext class中的方法getSession得到
2.Action实现org.apache.struts2.interceptor.SessionAware接口的方式来对session 进行操作
下面先看一个采用第一种方式,在action中得到session的例子

写道
package s2.ex.action;


import java.util.Map;


import com.opensymphony.xwork2.ActionContext;

import com.opensymphony.xwork2.ActionSupport;


public class SessionTestAction extends ActionSupport {


public String execute() {

ActionContext actionContext = ActionContext.getContext ();

Map session = actionContext.getSession ();

session.put( "USER_NAME" , "Test User" );

return SUCCESS ;

}
}
 
在这个例子中,通过ActionContext 得到session,并往session里放置一个key为USER_NAME,值为Test User的内容。
下面是一个实现 org.apache.struts2.interceptor.SessionAware接口来对session操作的例子

package  s2.ex.action;


import java.util.Map;


import org.apache.struts2.interceptor.SessionAware;


import com.opensymphony.xwork2.ActionSupport;


public class SessionTest1Action extends ActionSupport implements SessionAware {

    private Map session ;

    public void setSession(Map session) {

       this . session = session;


    }

    public String execute() {

       this . session .put( "USER_NAME" , "Test User 1" );

       return SUCCESS ;

    }

}
 
<%@ page contentType = "text/html; charset=UTF-8" %>

<%@ page pageEncoding = "utf-8" %>

<%@ taglib prefix = "s" uri = "/struts-tags" %>

< html >

< head >

    < title > Session Test </ title >

</ head >


< body >

< h1 >< s:property value = "#session.USER_NAME" /></ h1 >

< h1 > </ h1 >

</ body >
</ html > 
 

   一般在项目中往往会往session里放置一个Object,必如说user,user里有个boolean admin和String userName,如果user里存在isAdmin的方法,在jsp中可以通过<s:if test="#session.user.admin">来判断用户有没有管理权限,通过<s:property value="#session.user.userName">或者来取得用户名。
为了您的安全,请只打开来 源可靠的网址

打开网站     取消

来自: http://hi.baidu.com/zj360202/blog/item/9ec6b54e779474c0d0c86a06.html
分享到:
评论

相关推荐

    Struts2 的Action使用session的方法

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

    Struts2中的session用法

    在 Struts2 中,要使用 Session,需要实现 SessionAware 接口,该接口提供了一个 setSession 方法,用于将 Session 对象传递给 Action。在 Login.java 文件中,我们可以看到,Login 类实现了 SessionAware 接口,并...

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

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

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

    OGNL是Struts2中强大的表达式语言,它允许开发者直接在JSP或Action中通过表达式来访问request、session和application中的数据。例如,`&lt;s:property value="#session['key']" /&gt;`可以在页面上显示session中的值。在...

    struts2访问request,session,application作用域

    在 Struts2 中,处理用户请求时经常需要使用到 Servlet 的内置对象,比如 Request、Session 和 Application,这些对象可以帮助开发者存储和获取数据。然而,在实际应用中,为了避免代码与 Servlet API 过度耦合,...

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

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

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

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

    jsp中Action使用session方法实例分析.docx

    本文将详细介绍在 JSP 和 Struts2 中如何在 Action 类中使用 Session,包括两种主要的方法:通过 `ActionContext` 获取 Session 和实现 `SessionAware` 接口。 #### 一、通过 `ActionContext` 获取 Session 在 ...

    struts2 中action的使用

    以下是对"struts2中action的使用"的详细解释。 1. **Action类**:Action类是Struts2框架中的核心组件,它继承自`com.opensymphony.xwork2.ActionSupport`类。这个类提供了许多内置的功能,如国际化、错误和异常处理...

    struts2标签使用方法

    下面我们将详细探讨Struts2标签的使用方法以及EL(Expression Language)表达式。 1. **Struts2标签库**: - **s:textfield**: 用于创建输入字段,可以设置属性如name、value、size、maxlength等。 - **s:...

    struts2生成中文验证码的Action

    在Struts2中,Action是核心组件,负责处理用户请求并返回相应的结果。在这个特定的场景中,我们讨论的是如何在Struts2中创建一个能够生成中文验证码的Action。 验证码的主要目的是防止自动机器人或恶意攻击,通过向...

    Struts2 part 3:在Action中使用ServletAPI

    6. **URL重写和URL生成**:Servlet API提供了`RequestDispatcher`用于转发和重定向,而在Struts2中,`ActionSupport`类的`redirectAction()`和`generateUrl()`方法可以帮助我们生成和重定向到特定的Action。...

    基于用户登陆的struts2中action的分类实例

    在Struts2中,Action是核心组件之一,它负责处理用户的请求,并将业务逻辑的结果返回给视图进行展示。本实例将深入探讨在基于用户登录场景下,如何在Struts2中对Action进行分类和设计。 首先,我们需要了解Struts2...

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

    1. **Struts2框架**:Struts2是Apache软件基金会下的一个开源项目,它基于MVC设计模式,提供了强大的Action、拦截器、结果类型等机制,使得开发者可以更高效地进行Web应用开发。在权限控制方面,Struts2提供了拦截器...

    JavaEE Struts2利用tokenSession防止重复提交

    在JavaEE应用开发中,Struts2框架是一个广泛使用的MVC框架,它提供了一种有效的方式来组织和控制应用程序的行为。然而,随着Web应用的发展,防止重复提交成为一个重要的问题,尤其是在处理金融交易、投票等关键操作...

    struts2创建 request response session application

    接下来,我们将深入探讨Struts2中如何创建和使用这些范围。 1. 请求(Request)范围: 在HTTP协议中,每个请求都是无状态的,因此,如果要在多个Action之间共享数据,可以将数据存储在请求范围内。在Struts2中,...

    STRUTS2获得session和request

    ### STRUTS2中获取Session和Request的方法 在STRUTS2框架中,有多种方式可以访问`session`和`request`对象。下面我们将详细介绍其中的两种主要方法:实现接口法和使用ActionContext。 #### 实现接口法 STRUTS2...

    struts2框架的使用

    1. **Action类**:在Struts2中,业务逻辑通常封装在Action类中。Action类是处理用户请求的实体,它实现了`com.opensymphony.xwork2.Action`接口或其子接口,并定义了执行逻辑的方法,如`execute()`方法。 2. **配置...

    struts2简单例子

    在Struts2中,模型负责业务逻辑,视图负责展示数据,而控制器接收用户请求并协调模型和视图的交互。 2. **Struts2入门**: 创建一个简单的Struts2应用通常涉及以下步骤: - 引入Struts2库:在项目中添加Struts2的...

    Struts2调试方法

    6. **查看Action上下文**:Struts2的ActionContext封装了当前请求的所有上下文信息,如session、parameters等。在调试时,可以检查ActionContext中的内容来了解请求的状态。 7. **处理结果类型**:调试时,要留意...

Global site tag (gtag.js) - Google Analytics