當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringMvc Intercetor
生活随笔
收集整理的這篇文章主要介紹了
SpringMvc Intercetor
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
對于登錄的訪問控制以及session的超時控制。
當用戶在未登錄情況下,直接在地址欄輸入url進入某些頁面時,會越過登錄頁,如果不做控制會有安全問題。
因此可添加攔截器處理異常:
/*** @Description: 非法登錄攔截* @author DennyZhao* @date 2018年2月24日* @version 1.0*/ public class LoginInterceptor implements HandlerInterceptor {private static final Logger logger = LoggerFactory.getLogger(LoginInterceptor.class);@Overridepublic void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)throws Exception {// TODO Auto-generated method stub }@Overridepublic void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)throws Exception {// TODO Auto-generated method stub }@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse resp, Object arg2) throws Exception {logger.debug(">>>preHandle(HttpServletRequest request, HttpServletResponse resp, Object arg2)");User User = (User)request.getSession().getAttribute(CommonConstants.SESSION_USER);if(retireUser == null) {logger.warn("session time out...");throw new MySessionException("會話超時...");}logger.debug("<<<preHandle(HttpServletRequest request, HttpServletResponse resp, Object arg2)");return true;}}?
?注意:要實現springmvc的?HandlerInterceptor 這個接口,同時將這個攔截器配置到spring配置文件中:
<mvc:interceptors><mvc:interceptor><!-- 攔截全部地址 --><mvc:mapping path="${adminPath}/rest/**" /><mvc:exclude-mapping path="${adminPath}/rest/login/**"/><!-- 登錄攔截類 --><bean id="loginInterceptor"class="com.common.interceptor.LoginInterceptor"></bean></mvc:interceptor> </mvc:interceptors>?
轉載于:https://www.cnblogs.com/DennyZhao/p/8472496.html
總結
以上是生活随笔為你收集整理的SpringMvc Intercetor的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最短路最新心得
- 下一篇: LeetCode--Sum Root t