欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Spring boot】过滤器

程序员文章站 2022-03-02 17:17:43
...

简介

	过滤器和拦截器主要可以实现请求过滤,
    例如我们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

在访问指定过滤路径时调用

相关标签: SpringBoot成长之路