基本概念
1、What-- 过滤器什么?
Java中servlet过滤器是动态拦截请求和响应,以便变换或使用请求和响应中的信息。当客户端请求服务器上的某些资源时,过滤器可以对这些请求进行拦截,先执行过滤器中的一段代码,然后再将请求交给相应的servlet或jsp去处理。
比如我们每次从request对象中读取数据时,都要设置request的字符编码,这时,我们可以将这些频繁使用的公共代码,放在过滤器中,这样在被每个请求处理之前先执行过滤器中的代码。
2、Why--为什么要使用过滤器
因为过滤器将公共代码放入其中,这样可以减少代码的冗余,也便于更新和维护。
3、How--怎样使用过滤器
Servlet过滤器实际上是servlet编程的Java类,我们只要建立一个实现Filter接口的类并指定要拦截的url规则,并重写doFilter()方法就可以了。
一、配置文件web.xml
说明:servlet3.0有了注解(annotation),就不必使用配置文件配置filter和路由的映射了。
lessons
index.jsp
index.html
userSessionKey
user
loginPage
/Login.jsp
LoginFilter
com.zyz.util.LoginFilter
LoginFilter
/admin/*
二、登录验证过滤器LoginFilter.java
packagecom.zyz.util;importjava.io.IOException;impor