这段时间对servlet和filter的知识点复习了一下,通过几个小小例子的时间,明白了Servlet过滤器的功能,也从例子中体会到了Filter的工作方法。下面做个小小的总结:
Servlet过滤器能够对Servlet容器的请求、响应对象进行检查和修改,而自己本身并不产生请求和响应对象,只起到一个过滤的作用,也因此称之为“过滤器”。呵呵
Servlet过滤器是Java Servlet 规范2.3的一部份,所有的Servlet过滤器都必须实现javax.servlet.Filter接口。必须实现以下三个方法:
- init(FilterConfig) //过滤器的初始化方法
- doFilter(ServletRequest,ServletResponse,FilterChain) //主要完成实际的过滤操作 FilterChain参数用于访问后续过滤器
- destroy( ) // 释放Servlet过滤器占用的资源
总之,filter能实现很多功能,如字符集定义,权限控制,还可以用于资源访问时限制ip等,什么时候用当然要根据你的实际情况来决定,下面给几个例子,可以体会一下!
字符集定义,多用与中文问题。
web.xml中的配置:
权限控制(只判断session有没有值,可以扩展到更复杂)
对应web.xml配置: