为什么java servlet不是过滤器?

时间:2011-09-07 11:54:26

标签: java

  

可能重复:
  servlet vs filter

我是java初学者。现在我正在学习过滤器。 servlet和amp;之间有什么区别?过滤。我读过有关过滤器的内容,

  

过滤器是一个可以转换请求或修改请求的对象   响应。过滤器不是servlet;他们实际上并没有创造一个   响应

我无法理解。任何人都可以向我解释。

1 个答案:

答案 0 :(得分:4)

过滤器的示例是压缩响应的GZIP过滤器。一些servlet生成输出,gzip过滤器只是压缩它。过滤器可以映射到来自多个servlet的进程输出,或者仅映射到任何路径,而与servlet的映射方式无关。

过滤器的另一个例子:

  • 过滤以从输出中删除空格
  • 过滤器以设置缓存标头
  • 过滤以检查用户是否可以实际访问指定的网址

在每种情况下,过滤器都有机会改变请求或响应,但通常不会自行生成响应。