spring拦截机制中Filter(过滤器)、interceptor(拦截器)和Aspect(切面)的使用及区别
Spring中的拦截机制,如果出现异常的话,异常的顺序是从里面到外面一步一步的进行处理,如果到了最外层都没有进行处理的话,就会由tomcat容器抛出异常.
1.过滤器:Filter :可以获得Http原始的请求和响应信息,但是拿不到相应方法的信息
2.拦截器:Interceptor:可以获得Http原始的请求和响应信息,也拿得到相应方法的信息,根据httpServeltRquest也能拿到请求参数
3.ControllerAdvice(Controller增强,自spring3.2的时候推出):主要是用于全局的异常拦截和处理,这里的异常可以使自定义异常也可以是JDK里面的异常
4.切片:Aspect:主要是进行公共方法的,可以拿得到方法响应中参数的值,但是拿不到原始的Http请求和相对应响应的方法