[转]Spring mvc interceptor配置拦截器,没有登录跳到登录页
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context.xsd
- http://www.springframework.org/schema/mvc
- http://www.springframework.org/schema/mvc/spring-mvc.xsd"
- default-autowire="byName">
- <!-- auto register Processor -->
- <context:annotation-config />
- <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
- <property name="basePackage" value="com.anxin.msapweb.db.mybatis.mapper" />
- </bean>
- <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
- <property name="dataSource" ref="db2dataSource" />
- </bean>
- <mvc:interceptors>
- <mvc:interceptor>
- <!-- 需拦截的地址 -->
- <!-- 一级目录 -->
- <mvc:mapping path="/*.do" />
- <mvc:mapping path="/*.ajax" />
- <mvc:mapping path="/*.htm" />
- <!-- 二级目录 -->
- <mvc:mapping path="/*/*.do" />
- <mvc:mapping path="/*/*.ajax" />
- <mvc:mapping path="/*/*.htm" />
- <!-- 需排除拦截的地址 -->
- <mvc:exclude-mapping path="/login.htm"/>
- <bean class="com.anxin.msapweb.web.interceptor.SecurityInterceptor" />
- </mvc:interceptor>
- </mvc:interceptors>
- </beans>
注:不支持<mvc:mapping path="*.do" />
- package com.anxin.msapweb.web.interceptor;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.servlet.http.HttpSession;
- import org.springframework.web.servlet.HandlerInterceptor;
- import org.springframework.web.servlet.ModelAndView;
- import com.anxin.msapweb.common.Config;
- public class SecurityInterceptor implements HandlerInterceptor {
- private static final String LOGIN_URL = "/login.htm";
- @Override
- public boolean preHandle(HttpServletRequest req, HttpServletResponse res, Object handler) throws Exception {
- HttpSession session = req.getSession(true);
- // 从session 里面获取用户名的信息
- Object obj = session.getAttribute(Config.Passport.SESSION_NAME_LOGIN_RESULT);
- // 判断如果没有取到用户信息,就跳转到登陆页面,提示用户进行登陆
- if (obj == null || "".equals(obj.toString())) {
- res.sendRedirect(LOGIN_URL);
- }
- return true;
- }
- @Override
- public void postHandle(HttpServletRequest req, HttpServletResponse res, Object arg2, ModelAndView arg3) throws Exception {
- }
- @Override
- public void afterCompletion(HttpServletRequest req, HttpServletResponse res, Object arg2, Exception arg3) throws Exception {
- }
- }
(原文地址:http://qiaolevip.iteye.com/blog/1827676)
[转]Spring mvc interceptor配置拦截器,没有登录跳到登录页的更多相关文章
- Spring mvc interceptor配置拦截器,没有登录跳到登录页
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 1.5(Spring MVC学习笔记) 拦截器(Interceptor)
一.拦截器 1.1拦截器简介 Spring中的拦截器类似Servlet中的过滤器(Filter),主要用于拦截用户请求, 并进行一定的处理操作(如验证权限.记录日志.设置编码方式等). 1.2拦截器实 ...
- Spring Mvc 的自定义拦截器
spring mvc的拦截器 SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验证,或者是来判断用户 ...
- Spring MVC中的拦截器/过滤器HandlerInterceptorAdapter的使用
一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的 而在Spring中,基于Filter这种方式可以实现Bean预处理.后处理. 比如注入FilterRegistrationBean,然后 ...
- spring mvc中的拦截器小结 .
在spring mvc中,拦截器其实比较简单了,下面简单小结并demo下. preHandle:预处理回调方法,实现处理器的预处理(如登录检查),第三个参数为响应的处理器(如我们上一章的Control ...
- spring原拦截器配置与新命名空间mvc:interceptors配置拦截器对照与注意事项
原先,我们是这么配置拦截器的 <bean id="openSessionInViewInterceptor"class="org.springframework.o ...
- Spring MVC中自定义拦截器的简单示例
1. 引言 拦截器(Interceptor)实现对每一个请求处理前后进行相关的业务处理,类似于Servlet的Filter. 我们可以让普通的Bean实现HandlerIntercpetor接口或继承 ...
- Spring MVC中的拦截器Interceptor
谈谈spring中的拦截器 在web开发中,拦截器是经常用到的功能.它可以帮我们验证是否登陆.预先设置数据以及统计方法的执行效率等等.今天就来详细的谈一下spring中的拦截器.spring中拦截器主 ...
- Spring MVC 方法注解拦截器
应用场景,在方法级别对本次调用进行鉴权,如api接口中有个用户唯一标示accessToken,对于有accessToken的每次请求可以在方法加一个拦截器,获得本次请求的用户,存放到request或者 ...
随机推荐
- Mysql删除所有表
SELECT CONCAT('DROP TABLE IF EXISTS ', table_name, ';') FROM information_schema.tables WHERE table_s ...
- MYSQL SELECT FOR UPDATE
问题说明: 最近遇到一个问题,多个WORKER同时向MYSQL数据库请求任务,如何实现互斥?例如: SELECT * FROM student WHERE id > 10 LIMIT 100; ...
- tornado code
# get the requtest URL self.request.uri
- [译]AngularJS Services 获取后端数据
原文:ANGULARJS SERVICES – FETCHING SERVER DATA $http是AngularJS内置的服务,能帮助我们完成从服务端获数据.简单的用法就是在你需要数据的时候,发起 ...
- Maven 拾遗
01. maven 概要 首先我把 maven 的概念快速的梳理一下,让我们快速地建立起一个比较精确的 maven 应用场景. maven 不是 ant,也不是 make,以前接触的构建工具,需要写一 ...
- Java多线程之CountDownLatch和CyclicBarrier同步屏障的使用
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6558349.html 一:CountDownLatch CountDownLatch是一个执行 完成任务 ...
- 在唯一密钥属性“name”设置为“ExtensionlessUrlHandler-Integrated-4.0”时,无法添加类型为“add”的重复集合项
以管理员运行下面的命令注册: 32位机器: C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i 64位机器: C:\W ...
- HotSpot JVM Component
- 【转载】Java 网络编程
本文主要是自己在网络编程方面的学习总结,先主要介绍计算机网络方面的相关内容,包括计算机网络基础,OSI参考模型,TCP/IP协议簇,常见的网络协议等等,在此基础上,介绍Java中的网络编程. 一. ...
- 错误提示:通过 Web 服务器的身份验证的用户无权打开文件系统上的文件
//win7中iis配置好了可是网页打不开,为什么.? //错误提示:通过 Web 服务器的身份验证的用户无权打开文件系统上的文件 //解决办法1.右键单击你的网站根目录文件夹,如wwwroot文件夹 ...