基于数据库行在日期/时间启动Java事件
我正在尝试创建一个侦听器(或者类似的东西?),当数据库行中的日期字段与当前时间相同时,它将启动一个特定事件。当然,我可以每秒钟触发一次,检查日期/时间是否与当前相同,但我认为这是相当广泛的。应该有更好的选择 我想做的是:基于数据库行在日期/时间启动Java事件,java,listener,Java,Listener,我正在尝试创建一个侦听器(或者类似的东西?),当数据库行中的日期字段与当前时间相同时,它将启动一个特定事件。当然,我可以每秒钟触发一次,检查日期/时间是否与当前相同,但我认为这是相当广泛的。应该有更好的选择 我想做的是: 我的数据库中安排了几场(例如足球)比赛。在比赛开始的特定时间,我将在我的Java应用程序中启动一个事件。当时可能有1个或多个匹配项。我知道您试图在java应用程序中而不是在数据库中安排未来事件的执行 您应该考虑使用方法调度> /COD>将任务的执行延迟到特定的时间点。p> 您必
我的数据库中安排了几场(例如足球)比赛。在比赛开始的特定时间,我将在我的Java应用程序中启动一个事件。当时可能有1个或多个匹配项。我知道您试图在java应用程序中而不是在数据库中安排未来事件的执行
您应该考虑使用方法<代码>调度> /COD>将任务的执行延迟到特定的时间点。p> 您必须解决的唯一问题是如何将数据库中的任务与计划中的任务同步
编辑:如果使用返回的taskID->ScheduledFuture对象保留映射,则可以轻松调用对象上的cancel以删除任务。但您必须添加某种最后修改列来检测新的和更新的任务,并查询数据库以检查是否没有任何新任务。您使用哪个数据库?您使用哪个数据库?数据库并不重要。我应该在我的Java应用程序中触发一个事件。是的,我的意思是在Java中启动未来的事件,而不是在数据库中。ScheduledExecutorService是一种很有前途的服务。今晚我要看一看这个!谢谢你的帮助。我认为最好的同步方法是通过启动应用程序添加所有数据库时间/日期。当事件从日期更改时,也更新ScheduledExecutorService。