servlet和filter的比较

本文深入探讨了JavaWeb应用中的过滤器和Servlet的核心功能与特点,包括过滤器如何在请求处理前和后检查和修改请求响应对象,以及Servlet作为Web组件的核心角色,如何动态生成HTML文档,转发请求至其他组件,读取和设置Cookie,以及访问服务器资源。通过理解这些机制,开发者能够更高效地构建和维护复杂的Web应用。

1,概念的比较: 

过滤器: 过滤器是在 Java Servlet 2.3 规范中定义的,它能够对Servlet 容器传给Web组件的ServletRequest对象和ServletResponse对象进行检查和修改。过滤器本身并不生成ServletRequest对象和ServletResponse对象,它只为Web组件提供如下过滤功能:


* 过滤器能够在Web组件被调用之前检查ServletRequest对象,修改响应头和请求正文内容,或者对请求进行预处理操作。

* 过滤器能够在Web组件被调用之后检查ServletResponse对象,修改响应头和响应正文。


过滤器的特点:

** 过滤器可以检查ServletRequest和ServletResponse对象,并且利用ServletRequestWrapper和ServletResponseWrapper包装类来修改ServletRequest和ServletResponse对    象。

** 可以在web.xml 文件中为过滤器映射特定的URL。当客户请求访问此URL时,Servlet容器就会先触发过滤器工作。

** 过滤器是JavaServlet2.3规范的一部分,因此所有实现Java Servlet 2.3 规范及其以上版本的Servlet容器都支持过滤器。

** 多个过滤器可以串联在一起,协同为Web组件过滤请求对象和响应对象。


 Servlet   

Servlet是Java Web应用中的最核心组件。Servlet运行在Servlet容器中,能够为各种各样的用户请求提供相应的服务。Servlet可以轻易完成如下任务:

* 动态生成HTML文档

* 把请求转发给同一个Web应用中的其他Servlet组件。

* 把请求转发给其他Web应用中的Servlet组件。

* 读取客户端的Cookie,以及向客户端写入Cookie。

* 访问其他服务器资源(如数据库或基于Java的应用程序)。

Servlet对象由Servlet容器创建,它是Serlvet容器重点关照的宠儿。Servlet在容器中能呼风唤雨,驾轻就熟地动用容器为它提供的各种资源。古人云:“君子生非异也,善假于物也。” Servlet也是借助于容器为它提供的十八般武器,才能成为容器中神通广大的头号干将。。。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值