JSP可以完成的功能Servlet都可以完成,但是Servlet具备的很多功能是JSP所不具备的。
从使用上来看,Servlet可以分成简单Servlet、过滤Servlet(过滤器)和监听Servlet(监听器)3种。
JSP可以完成的只是简答Servlet的功能。
filter在开发中的常见应用:
1.filter可以目标资源执行之前,进行权限检查,检查用户有无权限,如有权限则放行,如没有,则拒绝访问 2.filter可以放行之前,对request和response进行预处理,从而实现一些全局性的设置。 3.filter在放行之后,可以捕获到目标资源的输出,从而对输出作出类似于压缩这样的设置
Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,它属于Servle中WEB层的技术,所以写FIlter的时候,起包名为XXX.web。
WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。
例如实现URL级别的权限访问控制、乱码问题、过滤敏感词汇、压缩响应信息等一些高级功能。
Servlet API中提供了一个Filter接口,开发web应用时,如果编写的Java类实现了这个接口,则把这个java类称之为过滤器Filter。
通过Filter技术,开发人员可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截,如下所示: