java - 根据数据库行在日期/时间开始 Java 事件

标签 java listener

我正在尝试制作一个监听器(或类似的东西?),当数据库行中的日期字段与当前时间相同时,它将启动特定事件。当然,我可以每秒触发一次以检查日期/时间是否与当前相同,但我认为这相当广泛。应该有更好的选择..

我想做的是: 我的数据库中安排了几场(例如足球)比赛。在比赛开始的特定时间,我将在我的 Java 应用程序中开始一个事件。这可能是当时的 1 场或多场比赛。

最佳答案

我了解到您正在尝试在 Java 应用程序而非数据库中安排 future 事件的执行。

您应该考虑使用 ScheduledExecutorService方法 schedule 将任务的执行延迟到特定时间点。

您唯一需要解决的问题是如何将数据库中的任务与计划中的任务同步。

编辑: 如果您保留 map 并返回 taskID->ScheduledFuture 对象,您可以轻松地对该对象调用 cancel 以删除任务。但是您必须添加某种 last-modification 列来检测新任务和更新任务,并查询数据库以检查是否没有任何新任务。

关于java - 根据数据库行在日期/时间开始 Java 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20882783/

相关文章:

java - 创建自动彩票

java - 如何防止 JTable 的 ListSelectionListener 自行取消选择行?

java - JSF 2 - 如何将 Ajax 监听器方法添加到复合组件接口(interface)?

java - Component#removeAll() 是否清理已删除控件的观察者/监听器?

android - 使用同一个监听器的几个 Activity

java - java中模板类型的instanceof

java - 如何获取ContainerRequest中的session Object才能使用注解@RolesAllowed(Role_user)?

java - 在无效的源代码发布级别 13 启用预览功能,只能在源代码级别启用预览 14Java(2098258)

android - Realm db ChangeListener 持久性 - 内存泄漏

java - 如何将 JTable 中的特定列设置为可选择?