use*_*586 28 java scheduler quartz-scheduler
是否可以创建一个立即触发的工作?当我想让这个工作成为现在的时候我用现在的日期和时间来存储一个cron表达式字符串 - 我觉得它太复杂了,还有另一种方法可以立即触发工作吗?
提前致谢.
Roh*_*sal 51
是的,使用以下内容Trigger立即解雇您的工作,而不是等待Cron表达式.
String jobName = ""; // Your Job Name
String groupName = ""; // Your Job Group
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity(jobName, groupName)
.startNow()
.build();
Run Code Online (Sandbox Code Playgroud)
Ken*_*han 28
在Quartz Scheduler中注册的所有作业都由JobKey唯一标识,JobKey由名称和组组成.您可以 通过调用Scheduler实例的triggerJob(JobKey jobKey)来立即触发具有给定JobKey的作业 .
//Create a new Job
JobKey jobKey = JobKey.jobKey("myNewJob", "myJobGroup");
JobDetail job = JobBuilder.newJob(MyJob.class).withIdentity(jobKey).storeDurably().build();
//Register this job to the scheduler
scheduler.addJob(job, true);
//Immediately fire the Job MyJob.class
scheduler.triggerJob(jobKey);
Run Code Online (Sandbox Code Playgroud)
注意 :
scheduler是整个应用程序中使用的Scheduler实例.它的start()方法应该在创建后调用.
该作业是持久的作业,不能将任何触发器或cron附加到它.它只能通过调用triggerJob(JobKey jobKey)以编程方式触发.
| 归档时间: |
|
| 查看次数: |
51859 次 |
| 最近记录: |