概述
java—拦截器Filter
AFilter拦截器:
第一层拦截,A拦截访问Servlet的请求
@WebFilter("/as")
public class AFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("A出生了");
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
System.out.println("A进来了");
filterChain.doFilter(servletRequest,servletResponse);//放行,执行过滤器链中的下一个过滤器,如果没有下一个过滤器,则放行
System.out.println("A结束拦截");
}
@Override
public void destroy() {
System.out.println("A销毁了");
}
}
Servlet代码:
@WebServlet("/as")
public class AServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("AServlet进来了");
//转发到
user.jsprequest.getRequestDispatcher("/users/user.jsp").forward(request,response);
}
}
BFilter拦截器
第二层拦截,B拦截,servlet转发到jsp的过程
@WebFilter(value = "/users/user.jsp" , dispatcherTypes = DispatcherType.FORWARD)
public class BFilter implements Filter {
public void destroy() {
System.out.println("B出生了");
}
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
System.out.println("B进来了");
chain.doFilter(req, resp);
System.out.println("B结束拦截");
}
public void init(FilterConfig config) throws ServletException {
System.out.println("B销毁了");
}
}
最后
以上就是阳光心锁为你收集整理的java---拦截器Filterjava—拦截器Filter的全部内容,希望文章能够帮你解决java---拦截器Filterjava—拦截器Filter所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复