FilterChain 是一个过滤器链,用于依次执行一系列过滤器。
要使用 FilterChain,首先需要创建一个 FilterChain 对象,并将需要执行的过滤器添加到链中。然后,在执行过滤器链时,调用 FilterChain 的 doFilter()
方法,传入请求和响应对象。
下面是一个使用 FilterChain 的简单示例:
public class MyFilter implements Filter { @Override public void doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException { // 进行过滤操作 // 调用下一个过滤器 chain.doFilter(request, response); } } public class MyServlet implements Servlet { @Override public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException { // 创建过滤器链 FilterChain chain = new FilterChain(); // 添加过滤器到链中 chain.addFilter(new MyFilter()); // 执行过滤器链 chain.doFilter(request, response); } }
在上面的示例中,MyFilter
是一个自定义的过滤器,实现了 Filter
接口。MyServlet
是一个 Servlet,实现了 Servlet
接口。在 MyServlet
中,首先创建了一个 FilterChain 对象,然后将 MyFilter 添加到 FilterChain 中。最后,调用 FilterChain 的 doFilter()
方法来执行过滤器链。
在实际使用中,可以根据需要添加多个过滤器到 FilterChain 中,它们会按照添加的顺序依次执行。