读书人

tomcat中valve跟servlet filter的区别

发布时间: 2012-09-14 11:53:44 作者: rapoo

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来实现。

读书人网 >软件架构设计

热点推荐