Filter开发步骤:
第一步:写一个类来实现Filter接口**(这个接口是在javax.servlet下的)**
编写过滤器
public class loginfilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
//这里的是ServletRequest 要转为HttpServletRequest 不然拿不到session
HttpServletRequest request= (HttpServletRequest) servletRequest;
HttpServletResponse response = (HttpServletResponse) servletResponse;
//设置了常量池,这里直接类点常量就OK了
Object username = request.getSession().getAttribute(finaltest.username);
//判断session的值是否为空
if (username==null){
//如果等于null重定向到登录页面
response.sendRedirect("/error.jsp");
}
filterChain.doFilter(request,response);
}
@Override
public void destroy() {
}
}
第二步:在web.xml中配置Filter
<!--注册过滤器, <url-pattern>/sys/*</url-pattern>
意思就是sys下面的所有请求都会经过
<filter-class>com.zhang.filter.loginfilter</filter-class>过滤器-->
<filter>
<filter-name>sysfilter</filter-name>
<filter-class>com.zhang.filter.loginfilter</filter-class>
</filter>
<filter-mapping>
<filter-name>sysfilter</filter-name>
<url-pattern>/sys/*</url-pattern>
</filter-mapping>
上面就是一个过滤器的简单使用方法和步骤!!!