grails quartz job 手动调用

1.安装插件

  a.在bulidConfig 中 加入 compile ":quartz:1.0.2" 运行项目

  b.grails install-plugin quartz  

  c.grails install-plugin http://cloud.github.com/downloads/nebolsin/grails-quartz/grails-quartz-0.4.1.zip

2.用法 

  a.命令行输入 grails create-job MyJob 这样会创建一个groovy 的文件 里面的内容为

  class MyJob{

    static triggers ={

      // name :triggers 的名字  startDelay :启动延迟 单位毫秒 ,repeatInterval 重复时间 , repeatCount :重复的次数

       simple name:'simpleTrigger', startDelay:10000, repeatInterval: 30000, repeatCount: 10

      // name :triggers的名字 startDelay :启动延迟 单位毫秒 cronExpression :时间表达式,规定具体的时间执行 如每天几点几分
      cron name:'cronTrigger', startDelay:10000, cronExpression: '0/6 * 15 * * ?'

      // name:trggers的名字 triggerClass:自定义实现triggers的类 

      custom name:'customTrigger', triggerClass:MyTriggerClass, myParam:myValue, myAnotherParam:myAnotherValue

    }

     def execute(){ print "Job run!" }

  } 

cronExpression: "s m h D M W Y"
                 | | | | | | `- 年 [optional]可选
                 | | | | | `- 星期, 1-7 or SUN-SAT, ? 必填 *表示是所有
                 | | | | `- 月, 1-12 or JAN-DEC  必填 *表示所有
                 | | | `- 天, 1-31, ?  必填
                 | | `- 时, 0-23 必选
                 | `- 分, 0-59 必填
                 `- 秒, 0-59  必填

3.手动调用

  //定时器类

  class MyJob{

    static triggers = {}

    def execute(context){

      println context.mergedJobDataMap.get('foo')

    }

  }

  //controller 的action 里面可以这样调用

  // 创建 cron trigger;
  MyJob.schedule('0/6 * 15 * * ?', [foo:'foo'])

    // 创建simple trigger: 执行repeatCount+1 次   相隔repeatInterval 毫秒执行一次

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

   // 在特定的时间执行

     MyJob.schedule(Date scheduleDate, Map params?)

   //执行自定定时器

      MyJob.schedule(Trigger trigger)

   // 立马执行

   MyJob.triggerNow(Map params?)

  

转载于:https://www.cnblogs.com/luozheng/p/3855637.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值