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分执行任务

  • 相关阅读:
    利用原生JS判断组合键
    MySQL基本操作简述
    Java链接Mysql传输数据
    Java培训--->>基础
    Java基础之字符串-->>字符串处理
    Java基础之结构-->>条件结构与循环结构
    Java基础之数组-->>数组常用操作
    Front End Development Certification (HTML5 and CSS)
    FlexSlider插件的详细设置参数
    常见<meta>的基本用法详解
  • 原文地址:https://www.cnblogs.com/qq2083587182/p/6555538.html
Copyright © 2011-2022 走看看