Javaweb基础复习------Filter相关应用+登录验证案例的使用
Filter(过滤器)
基本步骤:
1、定义类,实现Filter接口,并重写其所有方法
2、配置Filter拦截资源的路径,在类上定义2 WebFilter注解(WebFilter配置的路径,是拦截资源的路径)
3、在doFilter方法中输出一句话,并放行
在我最初没有写入filter接口时,访问hello.jsp显示这样的内容:
而在我写入filter文件后,在没有放行的情况下,会显示这样的情况:
不报错,但是不显示其中的内容
在我写入放行语句之后,就能够显示出原本的内容:
Filter案例:登录验证的实现
本来直接想要在filterServlet.java文件里面获取到文本框里面的session值,发现登录和注册功能都被拦截了,所以,需要做如下操作:
String[] urls={"/login.jsp","/loginServlet","/register.jsp","/registerServlet"};
//获取当前访问的资源路径
String url=req.getRequestURI().toString();
for(String s:urls){
if(url.contains(s)){
//放行
filterChain.doFilter(servletRequest,servletResponse);
return;
}
}
将相关的路径存储到一个数组里面,然后对其进行登录判断即可;