Spring框架--拦截器、异常处理

拦截器:

常用与用户登录验证。

原理:

请求--> 拦截器preHandle() --> true --> Controller --> 拦截器postHandle() --> ViewResolver(JSP) --> 拦截器afterCompletion() --> 响应。

使用方法:

1.自定义一个拦截器类,实现HandlerInterceptor接口

这里是执行拦截器的方法顺序。

preHandle():处理器执行前被调用。返回true会继续调用拦截器和处理器;返回false则中断执行后续拦截器和处理器;

postHandle():处理器执行后,视图处理前调用。此时可以通过modelAndView对象对模型数据进行处理或视图进行处理;

afterCompletion:请求处理完后调用,如性能监控中我们可以在此记录结束时间并输出消耗时间,还可以进行资源清理。

2.在applicationContext.xml配置拦截器<mvc:interceptors>

 

异常处理:

1、(全局异常)使用SimpleMappingExceptionResolver在配置文件(applicationContext.xml)中进行配置

2、(比较常用)使用@ExceptionHandler在本类中加入一个自定义的异常处理方法

3、实现HandlerExceptionResolver接口自定义异常处理器

4、在web.xml增加<error-page>定义,绝大多数服务器都支持。

猜你喜欢

转载自blog.csdn.net/qq_38644907/article/details/88354299