tomcat中valve和servlet filter的区别
Valve是位于Catalina容器中的组件,可以插入到请求处理pipeline中,对请求做某些处理。Servlet filter的作用与valve相同,不同的是valve是Tomcat的私有机制,与tomcat的基础架构/API是紧耦合的。Servlet API是公有的标准,所有的Web容器都支持filter机制。所以valve不是跨web容器的,filter是可以的。
另一个重要的区别是valve工作在容器级别,拦截所有应用的请求,servlet filter工作在应用级别,只能拦截指定的某个应用的所有请求。所以如果想做整个server端的拦截器,必须通过valve来实现。
页:
[1]