Java 如何访问正在运行的servlet过滤器?

Java 如何访问正在运行的servlet过滤器?,java,servlets,cron,quartz-scheduler,servlet-filters,Java,Servlets,Cron,Quartz Scheduler,Servlet Filters,我将创建一个ServletFilter,它将改变HTTP请求的处理方式 ServletFilter将根据数据库中数据的状态做出这些决定 我不希望每次调用ServletFilter时都发生数据库命中 webapp已经实现了quartz,因此在预定时间访问数据库不是问题 我的问题是,如何在这些时间间隔联系ServeltFilter,以便在下一个时间间隔之前为其提供一组新的保存信息 更新: 在这篇关于将ServletContext引入Quartz作业的文章中有一些有用的讨论。 简短的回答是:可以,但

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

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

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

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

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


更新: 在这篇关于将ServletContext引入Quartz作业的文章中有一些有用的讨论。 简短的回答是:可以,但我不推荐,因为您的更新功能不应该位于那里,而应该位于负责该任务的类中,这提高了内聚性

  • 如果您想知道如何获取过滤器,请查看javadoc中的这个方法

  • 可以通过调用以下方法获取Servlet上下文实例:


希望这对您有所帮助。

不要试图找到过滤器来告诉它,
让筛选器通过查询某处的服务(例如存储在
ServletContext
中)查找信息,或者让服务将信息存储在
ServletContext
中。"走错了路",;应该是一个过滤器和servlet都可以调用的服务。非常酷!这是一种更好的看待它的方式,并且减少了麻烦。谢谢