我将创建一个ServletFilter
,它将改变处理HTTP请求的方式。
ServletFilter
将根据数据库中的数据状态做出决定。
每次调用ServletFilter
时,我宁愿不会发生数据库命中。
webapp已经实现quartz
,因此在预定时间点击数据库不是问题。
我的问题是,如何以这些定时间隔联系ServeltFilter
,在下一个时间间隔之前为其提供一组新的已保存信息?
更新 在这篇SOF文章中有关于将ServletContext转换为Quartz作业的有用讨论。 How to get and set a global object in Java servlet context
答案 0 :(得分:1)
简短的回答是:是的你可以,但是我不推荐它,因为你的更新功能不应该在那里,而是在负责该任务的类中,这可以提高凝聚力。 / p>
如果您想知道如何获取过滤器,请在javadoc中查看此方法。
可以通过调用此方法获取Servlet上下文实例:
希望您觉得这很有帮助。
答案 1 :(得分:1)
而不是试图找到过滤器告诉它,
让过滤器通过在某处查询服务(例如存储在ServletContext
中)来查找信息,或者让服务将信息存储在ServletContext
中。