SpringMVC——攔截器
阿新 • • 發佈:2020-09-10
在springmvc配置檔案中新增:
<mvc:interceptors>
<mvc:interceptor>
<!--/**包括這個請求下的所有請求-->
<mvc:mapping path="/**"/>
<bean class="com.yl.config.MyInterceptor"/>
</mvc:interceptor>
</mvc:interceptors>
新增一個controller方法:
注意controller類添加註解@RestController,禁止跳入檢視
新建一個config包,新建攔截器類
package com.yl.config;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//攔截器
public class MyInterceptor implements HandlerInterceptor {
//return true:放行,執行下一個攔截器
//return false:不執行下一個攔截器
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
System.out.println("===========處理前===========");
return true;
}
//通常用來寫攔截日誌,可以不用
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
System.out.println("===========處理後===========");
}
//通常用來寫攔截日誌,可以不用
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
System.out.println("===========清理===========");
}
}
測試結果: