我试图设置一个作业在一个用户使用Quartz的时区的特定时间的单一执行。现在,开箱即用,告诉调度器执行时区中的任何内容的唯一方法是通过cronschedule
。对于Coors,我可能会将datetime转换为cron表达式,然后在第一次成功执行后立即停止触发器,但这有点难闻。
谢谢,
可以使用所需的时区更新现有触发器并重新安排作业:
http://quartz-scheduler.org/documentation/quartz-2.x/cookbook/updatetrigger
// retrieve the trigger
Trigger oldTrigger = sched.getTrigger(triggerKey("oldTrigger", "group1");
// obtain a builder that would produce the trigger
TriggerBuilder tb = oldTrigger.getTriggerBuilder();
// update the schedule associated with the builder, and build the new trigger
// (other builder methods could be called, to change the trigger in any desired way)
Trigger newTrigger = tb.withSchedule(simpleSchedule()
.withIntervalInSeconds(10)
.withRepeatCount(10)
.inTimeZone(TimeZone.getTimeZone("America/Los_Angeles"))
.build();
sched.rescheduleJob(oldTrigger.getKey(), newTrigger);
我正在试用Quartz调度器,并使用Maven使其与Spring一起工作。 我需要做的是将Quartz配置为存储作业,以便在计划的时间内执行作业。据我所知,石英中有两种类型的触发器,Simple和Cron。我还发现石英中有一种叫做JobStore的东西。我在某种程度上对它进行了配置。 有人能给我一个关于如何设置Quartz JobStore的好的参考资料吗?帮了大忙,谢谢。
问题内容: 我研究了,但是示例仅涉及使其重现。我正在寻找一种类似的功能,例如说“每个星期一的凌晨1点执行此任务”的功能。 问题答案: 感谢Patrick Altman,最近发布的1.0.3版现在支持此功能。 例:
问题内容: 我正在使用JavaScript类,并尝试使用方法获取当前日期。但显然是加载系统日期和时间。我正在从印度运行代码,但我想使用相同的方法来获取英国的日期和时间。我怎样才能做到这一点? 问题答案: 如果您知道UTC偏移量,则可以使用以下函数传递它并获取时间:
例如,我想编写一个Java程序,在每天上午12点打印“Hello World”,如何使用Quartz调度器实现这一点? 这样地?我应该把打印“hello world”方法放在哪里?
问题内容: 我研究了,但是示例仅涉及使其重现。我正在寻找一种类似的功能,例如说“每个星期一的凌晨1点执行此任务”的功能。 问题答案: 感谢Patrick Altman,最近发布的1.0.3版现在支持此功能。 例: 请参阅更改日志以获取更多信息: http://celeryproject.org/docs/changelog.html
问题内容: 如何设置在特定时间仅运行一次文件?替代方法之一是,但并非所有标准托管计划的用户都可以访问。因此,我想知道是否有办法使用? 问题答案: 尝试在2011年3月30日午夜执行命令: 警告 :如评论所述,cron的标准/默认实现不支持 year 列。请参考下面的TomOnTime答案,以了解将来在cron的标准实现中在特定时间运行脚本的正确方法。