1.首先是在服务器在启动的时候,执行Filter的构造函数,然后是init方法。
2.在请求到达的时候调用doFilter方法里的语句。
3.执行chain.doFilter函数:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println("执行了doFilter"); chain.doFilter(request, response); System.out.println("返回了doFilter"); }
每一次拦截请求时都会调用。
参数:
ServletRequest request
> 请求报文
ServletResponse response
> 响应报文
FilterChain chain
> 该对象的作用就是放行请求:
可以通过 chain.doFilter(request,response) 放行请求。
当调用chain.doFilter()就相当于调用目标资源的service()方法。
4.服务器运行请求的web资源。
4.再之后是doFilter的剩下的语句。
5.最后是destroy方法
时间: 2024-10-12 10:33:53