【问题标题】:How can I get the Current Servlet Object in a filter?如何在过滤器中获取当前 Servlet 对象?
【发布时间】:2012-05-09 06:39:57
【问题描述】:

我需要对特定的 Servlet 类对象做一些特殊的事情:

if (currentServlet instanceof SpecificServlet) {
      // do something special...
}

但我在 FIlter 中找不到获取 currentServlet 的方法。

【问题讨论】:

  • Filter是Servlet前面的一层,和Servlet没有连接,为什么需要Servlet的实例呢?

标签: java jakarta-ee servlets web servlet-filters


【解决方案1】:

过滤器中没有 current servlet 这样的东西。事实上,有时过滤器本身会处理整个请求,并且不需要 servlet。

你想达到什么目标?请注意,如果您想在 servlet 上运行某些方法,您可能会得到意想不到的结果,因为 servlet 在多个并发请求之间共享。您可能需要某种间接方式,例如在过滤器中存储请求或会话属性并在 servlet 中检索它。

另见

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-18
    • 1970-01-01
    • 1970-01-01
    • 2010-12-04
    相关资源
    最近更新 更多