`

struts2拦截器验证登陆状态

阅读更多
<interceptors>    
            <!--定义一个名为authority的拦截器-->    
            <interceptor  class="com.***.rights.RightInterceptor" name="rightInterceptor"/>    
                <!--定义一个包含权限检查的拦截器栈-->    
                <interceptor-stack name="mydefault">    
                <!--配置内建默认拦截器-->    
                <interceptor-ref name="defaultStack"/>    
                <!--配置自定义的拦截器-->    
                <interceptor-ref name="rightInterceptor"/>    
            </interceptor-stack>    
  </interceptors>    
        <default-interceptor-ref name="mydefault" />    
        <!--定义全局Result-->    
        <global-results>   
            <result name="login">Login.jsp</result>    
            <result name="error">/error.jsp </result>   
        </global-results>  
 

 

import java.util.HashMap;  
import java.util.Map;  
import com.opensymphony.xwork2.Action;  
import com.opensymphony.xwork2.ActionInvocation;  
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;  
import com.opensymphony.xwork2.ActionContext;  
public class RightInterceptor extends AbstractInterceptor {  
  
    @Override  
    public String intercept(ActionInvocation invocation) throws Exception {  
        //System.out.println("拦截器开始验证");  
        try  
        {  
            ActionContext actionContext = ActionContext.getContext();  
            Map<String,Object> session = actionContext.getSession();  
            String user=session.get("usercode").toString();     
            //当前用户session无效且访问的action不是登录action时,执行拦截,跳转  
            if((user==null || user.equals("")) && !invocation.getAction().getClass().getName().equals("登录action"))   
            {  
                return Action.LOGIN;  
            }  
        }  
        catch(Exception e)  
        {  
            e.printStackTrace();  
            return Action.LOGIN;  
        }  
        //System.out.println("拦截器通过验证");  
        return invocation.invoke();//执行访问的action  
    }  
  
}  
分享到:
评论
1 楼 zmwxiaoming 2016-11-17  

相关推荐

    使用struts2拦截器对登陆权限验证

    在本案例中,我们将深入探讨如何使用Struts2拦截器实现登录权限验证,同时结合Servlet Filter进一步加强安全性。 首先,让我们理解Struts2拦截器的工作原理。拦截器是基于AOP(面向切面编程)的概念设计的,它们...

    Struts2 拦截器 手动验证 或 自动验证 后台登录验证 源码

    登录验证是Web应用中常见的安全需求,Struts2通过拦截器可以实现对用户登录状态的有效控制。 在Struts2中,拦截器可以分为手动验证和自动验证两种方式。手动验证通常由开发者编写代码来检查用户是否已登录,如果未...

    struts2 拦截器实现登录控制

    这篇博客“struts2 拦截器实现登录控制”显然会探讨如何利用拦截器来实现用户登录验证,从而保护应用程序的受保护资源。 首先,我们了解下Struts2拦截器的工作原理。拦截器是基于AOP(面向切面编程)的概念,它位于...

    基于ssh拦截器框架Struts2拦截器的登录验证实现

    SSH2 框架中的 Struts2 拦截器功能允许开发者在特定操作执行前或执行后进行自定义处理,例如登录验证、权限检查等。在本文中,我们将探讨如何使用 Struts2 的拦截器来实现登录验证功能。 首先,我们需要了解 Struts...

    struts2拦截器应用小例子

    在Struts2中,拦截器(Interceptor)扮演着核心角色,它们允许开发者在动作执行前后插入自定义的逻辑,如日志、权限检查、数据验证等。本示例将探讨如何在Struts2中使用拦截器。 首先,我们需要理解Struts2拦截器的...

    Struts2拦截器源码

    在Struts2框架中,拦截器扮演着至关重要的角色,它们是实现业务逻辑、验证、日志记录等功能的核心组件。下面将详细探讨Struts2拦截器的源码及其工作原理。 首先,理解拦截器的定义:拦截器是AOP(面向切面编程)的...

    struts2拦截器实现权限控制

    此外,还可以利用Struts2提供的内置拦截器,例如`LoginCheckInterceptor`,它可以处理登录验证。不过,为了实现更复杂的权限控制,通常需要自定义拦截器来实现具体的业务逻辑,例如检查用户的角色、权限编码或者当前...

    struts2拦截器实现用户登录权限的验证

    ### Struts2拦截器实现用户登录权限的验证 在Web应用开发中,用户登录权限验证是确保系统安全的重要环节之一。Struts2框架提供了一种灵活的方式来实现这一功能:通过自定义拦截器来控制用户的访问权限。下面我们将...

    struts2拦截器

    例如,你可能会找到一个名为`VisitorCheckInterceptor.java`的类,里面包含判断用户登录状态的代码,以及`struts.xml`文件,其中配置了这个拦截器的使用。 通过这种方式,Struts2的拦截器机制使得我们可以高效地...

    struts2 用拦截器 实现用户权限登录

    Struts2是一个强大的Java web应用程序框架,它提供了一种组织和控制MVC(Model-...通过这种方式,Struts2的拦截器为我们提供了灵活的权限控制机制,使得我们能够轻松地管理和维护用户的登录状态,保证了应用的安全性。

    Struts2拦截器实例.docx

    本文档将详细介绍如何在Struts2框架中创建一个登录验证拦截器,以确保除了登录请求外,所有其他请求都会被拦截,并检查用户的登录状态。 #### 登录校验拦截器的工作原理 登录校验拦截器的主要作用是检查用户是否...

    运用struts2技术的拦截器实现的页面检测和用户注册

    在Struts2中,拦截器扮演着至关重要的角色,它们允许我们在动作执行前后插入自定义逻辑,提升代码的可复用性和模块化。本篇文章将深入探讨如何使用Struts2的拦截器技术来实现页面检测和用户注册功能。 首先,我们...

    struts2 Interceptor拦截器

    ### Struts2 Interceptor 拦截器详解 #### 一、概述 在现代Web开发中,特别是基于Java的Web应用程序开发中,Struts2框架因其简洁性和强大的扩展能力而备受青睐。Struts2框架的核心设计理念之一是MVC(Model-View-...

    struts2-demo及登录验证的拦截器的使用

    在这个“struts2-demo”项目中,我们将探讨Struts2的核心概念以及如何利用拦截器实现登录验证。 首先,让我们深入理解Struts2框架的核心概念: 1. **Action类**:在Struts2中,Action类是业务逻辑的载体,处理用户...

    struts2 拦截器 小小的登录控制

    在"struts2-interceptor"这个压缩包中,我们可以预期找到一个关于如何使用Struts2拦截器实现简单登录控制的示例。 拦截器在Struts2中扮演着类似过滤器的角色,但更加强大和灵活。它们通过定义一系列预定义的或...

    Struts2拦截器的简单登录应用.zip_jsp_lonelyi7a

    在这个“Struts2拦截器的简单登录应用”中,我们将深入理解如何利用拦截器实现用户登录验证。 首先,Struts2的拦截器机制是基于责任链模式的,它可以看作是在Action调用前后执行的一系列预定义或自定义操作。这些...

Global site tag (gtag.js) - Google Analytics