1.filter 过滤器 (servlet层面的)
2.interceptor 拦截器 (spring mvc层面,可以捕捉异常内容,3个方法需要注意:访问前 + 访问中 + 访问后)
3.异常处理器(可以将web异常抛出进行统一处理)
4.spring aop的操作(面向切面编程,针对以上3种更近controller的操作,这里可以做方法的增强,日志,事务的操作,还有异常的捕捉。所以在做一个request的日志的操作的时候,aop+thread local更加适合。)
顺序:
filter > interceptor >advince > aop 进入controller操作 > aop(after) > advince(after) > interceptor(after) > filter(after)