Servlet高级

一、什么是Filter

Filter被称作为过滤器或者拦截器,其基本功能就是对Servlet容器调用Servlet的过程进行拦截,从而在Servlet进行响应处理前后实现一些特殊功能。这就好比现实中的污水净化设备,它可以看作一个过滤器,专门用于过滤污水杂志。下图就描述了Filter在web应用中的拦截过程,具体如下:
在这里插入图片描述

在图中,当浏览器访问服务器中的目标资源时,会被Filter拦截,在Filter中进行预处理操作,然后再将请求转发给目标资源。当服务器接收到这个请求后会对其进行响应,在服务器处理响应的过程中,也需要先将响应结果发送给拦截器,在拦截器中对响应结果进行处理后,才会发送给客户端。
二、实现一个Filter程序

1)在Eclipse中创建一个名为chapter08的web工程,然后在该工程的Java resource/src目录下创建cn.itcast.chapter08.filter包,并在该包下创建一个MyServlet.java程序,如图:
在这里插入图片描述
2)在web.xml文件中对Servlet进行如下配置

在这里插入图片描述
部署chapter08工程到Tomcat服务器,启动Tomcat服务器,在浏览器的地址栏中输入URL地址//localhost:8080/chapter08/MyServlet,此时,可以看到浏览器成功访问到MyServlet程序,MyFilter的实现代码如图:
在这里插入图片描述
三、Filter映射
Filter映射细节

1、多个Filter共存的时候,拦截的先后顺序由谁来决定?

由的配置先后顺序来决定.

2、Filter的对哪些资源做过滤.:

被过滤的资源名称

/hello.jsp:只对/hello.jsp做过滤.

/*:对所有的资源做过滤操作.

/system/*:只对以/system/打头的资源做过滤.

*.do:只对以.do结尾的资源做过滤

3、可以通过元素来给当前Filter配置初始化参数.

通过FilterConifg对象.getInitParameter(String name)来获取初始化参数.

4、Servlet,Filter,Listener都属于Web组件.

一般的,先配置监听器,再配置过滤器,最后配置Servlet.

5、中的子元素表示对哪些操作执行过滤.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值