`
wangxiao5530
  • 浏览: 136633 次
  • 性别: Icon_minigender_2
  • 来自: 大连
社区版块
存档分类
最新评论

Spring中登录的拦截器

 
阅读更多

 

定义拦截器类如下:
public class LoginInterceptor extends HandlerInterceptorAdapter {

       @Override
       public void afterCompletion(HttpServletRequest request,
                  HttpServletResponse response, Object handler, Exception ex)
                   throws Exception {
            
      }

       @Override
       public void postHandle(HttpServletRequest request,
                  HttpServletResponse response, Object handler,
                  ModelAndView modelAndView) throws Exception {
            
      }

       @Override
       public boolean preHandle(HttpServletRequest request,
                  HttpServletResponse response, Object handler) throws Exception {
             // TODO Auto-generated method stub
            
          // 访问url不是/login.do时拦截
          if (request.getServletPath().startsWith( "/cmmn/menu/login") || request.getServletPath().startsWith("/cmmn/index" )) {  
              return true ;  
          }  
          // 用户Id没有的时候拦截      
          if (SessionUtil.getAttribute( "sesUserId" ) != null ) {  
              return true ;  
          }  
                
          response.sendRedirect(request.getContextPath() + "/" );  
          return false ;
      }
}
  
在applicationContext.xml中配置如下:
< beans xmlns ="http://www.springframework.org/schema/beans" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:p ="http://www.springframework.org/schema/p" xmlns:context ="http://www.springframework.org/schema/context"
        xmlns:mvc ="http://www.springframework.org/schema/mvc"
        xsi:schemaLocation ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
                http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
                http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">

              < mvc:annotation-driven />

       <!-- 以下配置将拦截所有的URL请求 -->
       < mvc:interceptors>
             < bean class ="egovframework.rte.interceptor.LoginInterceptor" />
       </ mvc:interceptors>
 
 
  •  注意以下几点:
 
      1)beans中必须添加
           xmlns:mvc ="http://www.springframework.org/schema/mvc"
                      xsi:schemaLocation ="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
      2)开启mvc注解
                     < mvc:annotation-driven />
      3)配置自己定义的拦截
       < mvc:interceptors>
                         <!-- class为自己创建的拦截类 -->
             < bean class ="egovframework.rte.interceptor.LoginInterceptor" />
       </ mvc:interceptors>
分享到:
评论

相关推荐

    spring boot 登陆拦截

    本教程将详细讲解如何在Spring Boot项目中设置一个简单的登录拦截器。 首先,我们需要理解Spring Security是Spring Boot推荐用于安全控制的框架。它提供了丰富的功能,包括认证、授权、CSRF防护、会话管理等。我们...

    Java SpringBoot实现的过滤器(和拦截器)控制登录页面跳转

    Spring MVC提供了拦截器(Interceptor)机制,它同样可以拦截请求并执行特定逻辑。相比于过滤器,拦截器更专注于业务逻辑,如权限校验、日志记录等。在SpringBoot中,我们可以通过实现HandlerInterceptor接口创建...

    Struts2 配置登陆拦截器

    在登录拦截器中,我们可以检查session中的登录信息,如果没有找到,就抛出异常或者返回一个表示未登录的结果代码。 ```java public class LoginInterceptor implements Interceptor { @Override public String ...

    登陆拦截器

    在这个架构中,“登陆拦截器”扮演着至关重要的角色,它负责在用户尝试访问特定资源前进行身份验证和授权。在本场景中,我们将深入探讨SSH框架中的拦截器机制以及如何实现一个简单的登录功能来连接数据库。 首先,...

    Spring MVC--拦截器实现和用户登陆例子

    在实际应用中,我们可以使用拦截器来实现用户登陆拦截器。例如,我们可以在Controller中实现登陆业务逻辑: ```java @Controller public class LoginController { @RequestMapping("/login") public String login...

    拦截器登陆权限验证案例

    4. **使用Session管理用户状态**:在用户成功登录后,我们将用户对象存储在Session中,以便在拦截器中检查。登录页面可以使用表单提交或Ajax请求来完成用户验证。 5. **不支持Hibernate**:虽然这个案例中没有使用...

    SSM框架有增删改查登陆注册文件上传拦截器

    本项目涵盖了SSM框架的基础应用,包括增删改查(CRUD)、用户登录注册、文件上传以及拦截器等功能,非常适合初学者进行实践学习。 1. **Spring框架**:Spring作为核心容器,管理着应用对象的生命周期和依赖关系。...

    在spring-boot工程中添加spring mvc拦截器

    Spring Boot 中添加 Spring MVC 拦截器 在 Spring Boot 工程中添加 Spring MVC 拦截器是实现请求预处理和后处理的一种常见方式。 Spring MVC 的拦截器(Interceptor)不同于 Filter,可以实现请求的预处理和后处理...

    springboot-登陆实现和拦截器.zip

    在项目"springboot-登陆实现和拦截器.zip"中,包含了实现这些功能的所有必要文件。可能包括了Spring Boot的配置文件(application.yml或application.properties)、启动类、安全配置类、控制器类、视图模板以及可能...

    SpringBoot 自定义拦截器 的 源代码

    我们对拦截器并不陌生,无论是 Struts 2 还是 Spring MVC 中都提供了拦截器功能,它可以根据 URL 对请求进行拦截,主要应用于登陆校验、权限验证、乱码解决、性能监控和异常处理等功能上。Spring Boot 同样提供了...

    Struts,Spring登陆

    在"Struts,Spring登陆"的例子中,我们可能会看到以下几个关键知识点: 1. **整合配置**:首先,我们需要在Struts的配置文件(struts-config.xml)中声明Action,而在Spring的配置文件(applicationContext.xml)中...

    ssm框架增删改查、分页查询、验证登录、登陆拦截

    在SSM中,可以通过Spring Security或自定义拦截器实现。用户输入的登录信息会发送到服务器,通过Service层比对数据库中的记录。如果匹配成功,可以将用户信息保存在Session或Token中,以便后续的权限判断。 登录...

    Vue2.0 axios前后端登陆拦截器(实例讲解)

    Vue2.0 axios前后端登陆拦截器实例讲解 本文将对Vue2.0 axios前后端登陆拦截器进行详细的讲解,包括前端和后端...我们使用了Spring Framework来实现后端的登陆拦截器,并使用了axios和Vue.js来实现前端的登陆拦截器。

    struts拦截器防止未登陆访问内部系统

    在`struts.xml`配置文件中添加拦截器的配置,确保除了`welcome`和`login`方法外,其他所有Action调用均需通过此拦截器的检查。此外,可利用全局转向配置,指定拦截失败时的默认转向页面。 #### 三、代码复用与扩展...

    struts2+hibernate+spring 整合 登陆

    在这个"Struts2+Hibernate+Spring 整合 登陆"的例子中,开发者展示了如何将这三个框架有效地结合在一起,构建一个完整的用户登录系统。以下是对这个案例中涉及的知识点的详细解释: 1. **Struts2**: - **Action类...

    SpringMVC-拦截除登陆外的其他请求

    "SpringMVC-拦截除登陆外的其他请求"这一主题旨在教你如何配置Spring MVC拦截器,以便在用户未登录时阻止他们访问特定的URL,而允许已登录用户正常操作。下面我们将深入探讨这一主题。 1. **Spring MVC 拦截器基础*...

    Spring MVC拦截器~~~登陆验证拦截-附件资源

    Spring MVC拦截器~~~登陆验证拦截-附件资源

Global site tag (gtag.js) - Google Analytics