【问题标题】:How to access a running servlet filter?如何访问正在运行的 servlet 过滤器?
【发布时间】:2012-05-11 12:50:38
【问题描述】:

我将创建一个ServletFilter,它将改变 HTTP 请求的处理方式。

ServletFilter 将根据数据库中数据的状态做出这些决定。

我不希望每次调用 ServletFilter 时都发生数据库命中。

webapp 已经实现了quartz,因此在预定时间访问数据库不是问题。

我的问题是,如何在这些时间间隔联系ServeltFilter,以便在下一个时间间隔之前为其提供一组新的保存信息?


更新: 在这篇 SOF 帖子中有关于将 ServletContext 放入 Quartz 作业的有用讨论。 How to get and set a global object in Java servlet context

【问题讨论】:

  • Ew。走错路了;应该是过滤器和 servlet 都可以调用的服务。

标签: java servlets cron quartz-scheduler servlet-filters


【解决方案1】:

而不是试图找到过滤器来告诉它, 让过滤器通过在某处查询服务来查找信息(例如,存储在ServletContext 中),或者只是让服务将信息存储在ServletContext 中。

【讨论】:

  • 非常酷!这是一种更好的看待它的方式,而且麻烦更少。谢谢。
【解决方案2】:

简短的回答是:是的你可以,但虽然我不推荐它,因为你的更新功能不应该在那里,而是在一个负责该任务的类中,这可以提高凝聚力。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2011-04-09
    • 2014-03-20
    • 2015-09-20
    • 2017-08-08
    • 2013-02-23
    • 2011-04-14
    • 2010-11-26
    • 2011-12-24
    • 2011-01-25
    相关资源
    最近更新 更多