Java中Filter是不是完全可取代Servlet

Java中Filter是不是完全可取代Servlet

网上说:Java中的Filter 并不是一个标准的Servlet ,它不能处理用户请求,也不能对客户端生成响应。 主要用于对HttpServletRequest 进行预处理,也可以对HttpServletResponse 进行后处理,是个典型的处理链。

是不是因为老版本问题,现在的Filter是不是完全可取代Servlet

回答:

不是老不老版本的问题。

两个东西功能不同。不能说Filter替代Servlet

正如你说的,filter功能.它使用户可以改变一个request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在response离开servlet时处理response.换种说法,filter其实是一个“servlet chaining“(servlet 链).

而servlet补充了不足。它可以产生reponse.

借用以下生命周期图了解下。

Filter过滤器

Servlet

以上是 Java中Filter是不是完全可取代Servlet 的全部内容, 来源链接: utcz.com/p/171084.html

回到顶部