如何在Spring 4中为不同作业的动态数据库值动态设置cron表达式

时间:2016-05-24 11:27:25

标签: java spring quartz-scheduler scheduler

我想在我的应用程序中配置调度程序,我必须动态地设置cron表达式和数据库值。当应用程序启动时,方法应该获取数据库值,并在cron表达式中为特定作业设置它们。请帮我解决一下这个。我是石英调度程序,弹簧调度程序概念的新手

2 个答案:

答案 0 :(得分:3)

在这种情况下,您可以很好地使用TaskSchedulerSpring Scheduling

请查看课程定义:

https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/TaskScheduler.html

scheduler.schedule(runnableTask, new CronTrigger(cron, TimeZone.getTimeZone(timezone)));

您可以按如下方式创建可运行的任务:

class RunnableTask implements Runnable {
    @Override
    public void run() {
        //
    }
}

创建cron触发器时,您可以加载cron expression from database

答案 1 :(得分:0)

你可能想看看这个答案。 https://stackoverflow.com/a/4499229/82632

基本上,您需要自动装配TaskScheduler类,然后以编程方式添加作业。