zoukankan      html  css  js  c++  java
  • spring整合Quartz定时器

    据说版本要对的上,

    Spring 3.0版本中内置的Quartz版本是<2.0

    1,java类

    package com.xy.utils.quartz;  
      
    import org.joda.time.DateTime;  
    import org.slf4j.Logger;  
    import org.slf4j.LoggerFactory;  
      
    /** 
     * 测试定时器类 
     * @author javaw 
     * 
     */  
    public class TestQuartz {  
            
           public static Logger logger = LoggerFactory.getLogger(TestQuartz.class);    
           public void TestMethod(){  
                logger.info("Auto Execute TestMethod start! Date={}" ,new DateTime().toString("YYYY-MM-DD HH:mm:ss" ));  
                logger.info("**********测试跑批类************");  
                logger.info("Auto Execute TestMethod end! Date={}" ,new DateTime().toString("YYYY-MM-DD HH:mm:ss" ));  
          }  
    }
    

    2,配置

    <!-- 实例化bean -->  
    <bean id= "testMethodQuartz" class ="com.xy.utils.quartz.TestQuartz"/>  
      
    <!-- 配置MethodInvokingJobDetailFactoryBean -->  
    <bean id= "testTaskMethod"  
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">  
           <property name="targetObject" ref="testMethodQuartz"/>  
           <property name="targetMethod" value="TestMethod"/>  
           <property name="concurrent" value="false"/>  
    </bean>  
      
    <!-- 配置定时表达式 -->  
    <bean id= "testTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean" >  
           <property name="jobDetail" ref="testTaskMethod" />   
          <!-- 每一分钟执行一次 -->   
          <property name="cronExpression" value="0 0/1 * * * ?" />   
    </bean>  
      
    <!-- 配置调度工厂 -->  
    <bean id= "testSchedulerFactoryBean"  
        class="org.springframework.scheduling.quartz.SchedulerFactoryBean">  
           <property name="triggers" >  
                 <list>  
                       <ref bean="testTaskTrigger" />  
                 </list>  
           </property>  
    </bean> 
    

    3,这里附带一下简单的时间表达式

    Quartz中时间表达式的设置-----corn表达式

    时间格式: <!-- s m h d m w(?) y(?) -->, 分别对应: 秒>分>小时>日>月>周>年,

    举例:

    1.每天什么时候执行:

    <value>0 59 23 * * ?</value>: 如下为每天23:59:00开始执行

    <value>0 0/1 * * * ?</value>:每一分钟执行一次

    <value>0 1,2,3 11,12 * * ? </value>: 每天11:01,11:02,11:03; 12:01,12:02,12:03分执行任务

  • 相关阅读:
    Luogu 2254 [NOI2005]瑰丽华尔兹
    Luogu 3168 [CQOI2015]任务查询系统
    Luogu U15118 萨塔尼亚的期末考试(fail)
    POJ 2778 DNA Sequence AC自动机 + 矩阵快速幂
    HDU 2457 DNA repair AC自动机 + dp
    POJ 3522 Slim Span 暴力枚举 + 并查集
    POJ 2955 Brackets 区间dp
    hdu 2604 Queuing dp找规律 然后矩阵快速幂。坑!!
    UESTC
    java & SQL
  • 原文地址:https://www.cnblogs.com/qq2083587182/p/6555538.html
Copyright © 2011-2022 走看看