原文:http://blog.csdn.net/liyisong2008/article/details/42915715
--------------------------------------------------------------------------
xml代碼:
[java]?view plaincopy
- <?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>??

Java代碼:
[java]?view plaincopy
- 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?{??
- ?}??
- ??
- }??
- ??
- ???