更新時間:2021-09-13 11:12:14 來源:動力節點 瀏覽1828次
HandlerInterceptor接口,實現接口內的方法
public class LoginInterceptor implements HandlerInterceptor {
//執行控制器之前的攔截程序
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
HttpSession session = request.getSession();
User user = (User)session.getAttribute("user");
if(user == null) {
String contextPath = request.getContextPath();
response.sendRedirect(contextPath+"/user/login");
return false;
}else {
return true;
}
}
//執行控制器之后的邏輯
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
// TODO Auto-generated method stub
}
//視圖渲染之后的邏輯
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
throws Exception {
// TODO Auto-generated method stub
}
}
spring-mvc配置文件內容
<!-- 攔截器 -->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/>
<mvc:exclude-mapping path="/static/**"/>
<mvc:exclude-mapping path="/user/login"/>
<mvc:exclude-mapping path="/user/AjaxDoLogin"/>
<bean class="com.cn.LoginInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
繼承HandlerIntercrprorAdapter實現類并重寫preHandle方法
邏輯和上面的類似
以上就是動力節點小編介紹的"Spring攔截器的兩種實現方式",希望對大家有幫助,想了解更多可查看Spring框架教程。動力節點在線學習教程,針對沒有任何Java基礎的讀者學習,讓你從入門到精通,主要介紹了一些Java基礎的核心知識,讓同學們更好更方便的學習和了解Java編程,感興趣的同學可以關注一下。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習