拦截器使用的代码
时间: 2024-02-21 09:58:14 浏览: 101
以下是一个简单的拦截器实现,可以用来拦截请求和响应:
```java
public class MyInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
// 在请求处理之前进行调用(Controller方法调用之前)
// 返回值为true,则继续向下执行,返回值为false,则中断请求
// 可以在这里进行权限、日志、参数检查等操作
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
// 请求处理之后进行调用,但是在视图被渲染之前(Controller方法调用之后)
// 可以在这里对返回的结果进行处理,比如修改ModelAndView中的数据,或者对视图进行修改
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
// 在整个请求结束之后被调用,也就是在DispatcherServlet 渲染了对应的视图之后执行(主要是用于进行资源清理工作)
}
}
```
可以通过在配置文件中配置拦截器来启用它:
```xml
<mvc:interceptors>
<bean class="com.example.MyInterceptor"/>
</mvc:interceptors>
```
阅读全文