filter对象能够拦截应用程序的HTTP request和response,我们可以在以下两个场景中使用到过滤器:
- 发送request请求给控制器前
- 发送response响应给客户端前
如下代码将会展示简单的过滤器实现Filter接口并标注@Component注解:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import javax.servlet.*;
import java.io.IOException;
public class SimpleFilter implements Filter {
public void init(FilterConfig filterConfig) throws ServletException { }
public void destroy() { }
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
System.out.println("Remote Host: " + servletRequest.getRemoteAddr());
System.out.println("Remote Address: " + servletRequest.getRemoteAddr());
filterChain.doFilter(servletRequest,servletResponse);
}
}
测试:
评论加载中