zoukankan      html  css  js  c++  java
  • Spring与Quartz实现定期任务

    <!-- 
    任务调度测试实现一 :
    自定义的任务对象com.bocloud.equipment.test.ExampleJob
    必须继承QuartzJobBean类,实现抽象方法executeInternal
    每次执行任务时,都会新创建一个任务对象.
    -->
    <bean id="myJobDetail" class="org.springframework.scheduling.quartz.JobDetailBean">
        <!--
    	属性jobClass不能通过ref来指定为exampleJob对象,该属性接收的是Class类型的参数
    	进行任务调度时,每次都是一个新的jobClass对象去执行executeInternal方法
        -->
        <property name="jobClass" value="com.bocloud.equipment.test.ComputerInfoGatherJob" />
    </bean>
    
    <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
        <property name="jobDetail" ref="myJobDetail" />
        <property name="cronExpression" value="0/10 * * * * ?" />
    </bean>
    
    <bean id="computerInfoGatherScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
                <ref bean="cronTrigger" />
            </list>
        </property>
    </bean>
    

      

    <!-- 
    任务调试实现测试二 :
    属性targetObject:指定执行任务的对象
    属性targetMethod:指定执行任务的方法,该方法必须是无参方法
    -->
    <bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="computerService" />
        <property name="targetMethod" value="list" />
    </bean>
         
    <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
        <property name="jobDetail" ref="jobDetail" />
        <property name="cronExpression" value="0/10 * * * * ?" />
    </bean>
         
    <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
            <ref bean="cronTrigger" />
        </list>
        </property>
    </bean>

    转载至:http://my.oschina.net/lhplj/blog/213773

    一个Quartz的CronTrigger表达式分为七项子表达式,其中每一项以空格隔开,从左到右分别是:秒,分,时,月的某天,月,星期的某天,年;其中年不是必须的,也就是说任何一个表达式最少需要六项! 
    例:0 0 12 ? * WED 表示每个星期三的12点执行,这里没有“年”这项! 

    字段名(项)  必须  值范围  特殊字符 
    秒 是 0-59  , - * /  
    分 是 0-59  , - * /  
    时 是 0-23  , - * /  
    月的某天  是 1-31  , - * ? / L W  
    月 是 1-12 or JAN-DEC  , - * /  
    星期的某天 是 1-7 or SUN-SAT  , - * ? / L #  
    年 否 empty, 1970-2099  , - * / 

  • 相关阅读:
    Spring事务原理一探
    浅谈AI视频技术超分辨率
    网易云信独家技术支持,壹点灵领跑心理服务行业
    音视频技术“塔尖”之争,网易云信如何C位出道?
    浅析为何使用融合CDN是大趋势?
    谈谈接入各种第三方推送平台的技术方案和一点经验
    编解码器之战:AV1、HEVC、VP9和VVC
    三年深入探索,网易云信让在线医疗做到技术“在线”
    5分钟学会Java9-Java11的七大新特性
    网易云信案例简析:锤科情怀缩影,子弹短信路在何方?
  • 原文地址:https://www.cnblogs.com/zhoucx66/p/5667825.html
Copyright © 2011-2022 走看看