Grails 设置颗粒中石英的重复间隔值

Grails 设置颗粒中石英的重复间隔值,grails,groovy,quartz-scheduler,Grails,Groovy,Quartz Scheduler,我想从数据库中获取一个值,然后将其设置为grails中Quartz插件中作业的repeatInterval值。我这样做是出于礼貌 class StartJob { def interval = Settings.first().interval static triggers = { simple name: 'mySimpleTrigger', startDelay: 2000, repeatInterval:interval } def

我想从数据库中获取一个值,然后将其设置为grails中Quartz插件中作业的repeatInterval值。我这样做是出于礼貌

class StartJob {
     def interval = Settings.first().interval

    static triggers = {
        simple name: 'mySimpleTrigger', startDelay: 2000, repeatInterval:interval

    }
    def group = "MyGroup"
    def execute(){
        //do something
    }
}
从表
Settings
中获取第一行,然后获取其interval列并将其放入简单触发器中。现在的问题是,间隔是非静态的,触发器是静态的,这会由于不匹配而产生错误。我如何处理这种情况?有没有办法解决这个问题,从其他地方触发工作等等

班级开始工作{

 static def interval =  Settings.getAll().get(0).interval

static triggers = {
    simple name: 'mySimpleTrigger', startDelay: 2000, repeatInterval:interval

}
def group = "MyGroup"
def execute(){
    //do something
} }
有没有办法解决这个问题,从其他地方触发任务 等等

是的,您可以像这样手动安排作业:

  MyJob.schedule(Long repeatInterval, Integer repeatCount?, Map params?)

请参阅此处的其他示例:

是否可以在作业类之外设置repeatInterval,然后启动作业?是的,请检查此项:,章节动态作业计划确定,我将作为答案发布