【Spring boot】过滤器
程序员文章站
2022-03-02 17:17:43
...
Spring boot 过滤器
简介
过滤器和拦截器主要可以实现请求过滤,
例如我们web项目判断一个请求之前要先拦截判断,
是都有权限来访问,session中是否有登录过的标志等等功能。
实践
创建过滤器
@WebFilter(filterName = "myfilter",urlPatterns = {"/*"})
public class Myfilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("Myfilter init");
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) servletRequest;
System.out.println("MyFilter doFilter"+req.getParameter("name"));
filterChain.doFilter(servletRequest, servletResponse);
return ;
}
@Override
public void destroy() {
System.out.println("MyFilter destroy");
}
}
WebFilter注解
@WebFilter(filterName = “myfilter”,urlPatterns = {"/*"})
filterName:指定过滤器名称
urlPatterns:指定过滤器过滤的地址
Filter生命周期
init
在程序启动的时候创建过滤器
doFilter
在访问指定过滤路径时调用