我开始在基于SQL和Unix的工作中使用数据库。
我很惊讶地发现,如果有人要求在下午5点左右或某个日期对其详细信息进行更改,那么分配事件的人必须等到下午5点并手动进行更改。
我很惊讶一个按钮,上面写着'稍后再申请更改'不存在,只有一个' Save'按钮。
我已经看到在stackoverflow上使用Java的复杂解决方案,但我不熟悉UNIX或SQL,并且谷歌搜索没有带来任何结果。
这是一个简单的修复吗? 它不必考虑任何时间差异,我假设它只能解决系统时钟问题;我知道Java有一个日历功能,我假设它可以在PC时钟下工作。
答案 0 :(得分:0)
Java确实有一个复杂的工具来安排将来执行的任务。请参阅ScheduledExecutorService
课程。
不是指定日期时间,而是将schedule
方法传递一定数量的纳秒,或毫秒,或秒,或分钟,或小时或天。您还传递TimeUnit
枚举实例以指示粒度。
而且,是的,Java依靠主机操作系统来跟踪日期时间。
我建议使用您的数据库与Java一起跟踪要运行的作业。如果仅使用Java,则预定作业将仅存在于内存中,并且在Java应用程序退出或崩溃时将消失。
相反,启动时的Java应用程序应检查数据库中是否有任何挂起的作业,并使用执行程序安排它们。完成的每个工作都应标记数据库"任务主管"表格行已完成。