java - javax.servlet.FilterChain 的用途是什么?

标签 java servlets servlet-filters

<分区>

我继承了一个大量使用 FilterChain 的 Struts 1 应用程序,但我不明白这种极其困惑的代码的好处。

“在 Servlet API 中,当您想要控制、预处理和/或后处理特定请求时,您通常会使用 Servlet。但是当您想要根据特定条件过滤/修改常见请求和/或响应时,则使用 Filter更合适。”

我的应用程序中的每个请求都基于特定条件,例如商家 ID 或搜索词。但是,将请求置于一整条东西链中似乎完全隐藏了正在发生的事情,开发人员试图追踪错误的原因,这似乎很疯狂。

最佳答案

FilterChain#doFilter()调用只是继续到目的地的 HTTP 请求,遵循完全相同的路径,就好像您首先没有使用过滤器一样。这通常是一个 servlet 类,甚至是一个 JSP 文件。因此,为了调试有问题的代码,最好在目标代码中放置一个断点,如果它不包含任何感兴趣的代码,则不要在过滤器中放置断点。

关于java - javax.servlet.FilterChain 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14693553/

相关文章:

java - 无法从 List<Object> 获取属性 - Servlet

java - 用于检查 session 存在的过滤器

java - 我如何配置我的 Jenkins 工作以获得测试报告?

java - Id 是 JSF 2 标记的必需属性吗?

java - JSON 和 java servlet

java - 在 applicationcontext.xml 中添加自定义过滤器类

spring-mvc - hybris - 哪个 Spring Controller 满足我的请求?

java - eclipse如何导入类

java - 用 C++ 或 Java 在屏幕上绘制叠加层

java - 即使路径/文件存在于 webapp 中,getRequestDispatcher 也返回 null