美文网首页
定时器(Quartz) [kwɔːts]

定时器(Quartz) [kwɔːts]

作者: 喜欢敲代码的猫 | 来源:发表于2017-12-25 20:08 被阅读0次

    Quartz定时器就是对java中Timer定时器的封装,支持Cron表达式定时

    使用步骤:

    1.定义任务类(指定到指定时间干什么)

    2.将任务类配置到JobDetail类中

    3.将JobDetail与Trigger(触发器)配对(Cron表达式是Trigger)

    4.将JboDetail+Trigger放入调度中心

    4.配置注解扫描

    ____________________________________________________________________

    上面用到的Cron表达式

    源于Unix系统中的Cron表达式,精度只到分钟

    我们使用的Cron表达式,精度到秒

    位数也从Unix中的6位变为7位=>七子表达式

    秒 分 时 日 月 周 年

    *:号

    任意值 *****?*(每年的每月的每日的每份的每一秒都执行一次)

    ?:号只能使用在周或日位置上(控制那一天执行时,要么通过日来表达要么通过周来表达,二选一) 表示忽略或省略

    某一位上需要填入多个值时,可以将多个值用逗号隔开

    0,15,30,45 * * ? * * *(每15秒执行一次)

    -:表达范围 1-10表示1到10的范围

    0-15 * * ? * * *(每分钟的0到15秒之间每秒执行一次)

    /:表达间隔 0/15 从开始每隔15单位执行(0/15 * * ? * * *)

    0 0 20 1/3 * ? *(每月从1号开始每隔三天晚上八点执行一次)

    L:(last)表示最后一个单位,只能用在日或周上

    0 0 21 L * ? *(每月最后一天的晚上9点)

    0 0 21 ? 0 2L *(每月最后一个周一的晚上9点)

    w:(work)表示工作日,(周一到周五工作日,只能使用在上)

    0 0 21 w * ? *(每月周一到周五的晚上九点执行)

    0 0 21 15w * ? *(每月的15号晚上9点执行,15号不是工作日就到15号最近的工作日执行,如果15号是周六name就会在周五触发,如果是周日就在周一触发)

    #:(Number)

    表示第几个指定单位,只能使用在周上

    0 0 21 ? * 1#3 *(每月的第三个周日的晚上九点执行)

    相关文章

      网友评论

          本文标题:定时器(Quartz) [kwɔːts]

          本文链接:https://www.haomeiwen.com/subject/swlawxtx.html