本网站是威乐水泵中国售后配件供应站,我公司拥有是华中地区唯一拥有销售和售后授权的公司,本网站旨在传递水泵技术,传递威乐声音。
过滤器是服务端的一个组件,是基于servlet实现从客户端访问服务端web资源的一种拦截机制,对请求request和响应response都进行过滤,很多操作着对其不太清楚,本期带来了***和过滤器的区别和应用场景、区别和联系详解!希望对你有一定帮助!
***和过滤器的区别和应用场景:
执行顺序
过滤器 -> *** -> aop -> 业务逻辑 -> ***的post方法 -> filter的destroy
使用场景:
日志记录:记录请求相关的日志,容易进行统计和监控。
权限检查:如登录检测 。
性能监控或者问题排查:***可以在某个方法执行前后进行处理,通过***可以将一个请求的调用链每个环节的时间打印出来进行问题排查,当然现在可以使用APM;
通用行为:获取一些全局需要的信息,例如通过token获得用户信息,将用户信息放在securityContext中,通过@ModelAttribure直接在controller中使用。
***和过滤器的区别和联系详解:
***是基于java的反射机制的,而过滤器是基于函数回调。
***不依赖与servlet容器,过滤器依赖与servlet容器。
***只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。
***可以访问action上下文、值栈里的对象,而过滤器不能访问。
在action的生命周期中,***可以多次被调用,而过滤器只能在容器初始化时被调用一次
***可以获取IOC容器中的各个bean,而过滤器就不行,这点很重要,在***里注入一个service,可以调用业务逻辑。