在grails中运行作业以每15分钟获取一次远程表数据

时间:2013-05-28 14:02:41

标签: grails plugins quartz-scheduler

我有一个远程表,我通过网络服务访问。现在我需要计算一个电话号码输入,改变15分钟。 尝试使用Grails quartz1.0插件。安装并创建了一份工作。  但不确定如何设置每15分钟执行一次作业。要测试的示例代码在这里 -

 class CountJob {
  static triggerNow = {
 // simple repeatCount: 10 // execute job once in 15 minutes
//def startDelay = 60000
    //def timeout = 10000000      
//def group = "MyGroup"
}

def execute() {
    println "run job!!"
 }  
}

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

查看Scheduling a Cron Job的插件文档。 您可以使用以下内容

class CountJob {
    static triggers = {
      cron name: 'myTrigger', cronExpression: "0 0/15 * * * ?"
    }

    def execute() {
        println "run job!!"
     }  
}

为了更好地了解如何在Quartz中创建cron表达式,请访问此Quartz Scheduler教程页面。

答案 1 :(得分:2)

如果您只是希望每15分钟重复一次而不是复杂的cron表达式,则可以将triggerNow部分替换为:

static triggers = {
    // execute job once every 15 minutes. 1000 * 60 * 15 millis
    simple repeatInterval: 900000l 
}