Quartz定时任务的使用

导入依赖
        <dependency>
           <groupId>org.quartz-scheduler</groupId>
           <artifactId>quartz</artifactId>
           <version>2.2.1</version>
       </dependency>
       <dependency>
           <groupId>org.quartz-scheduler</groupId>
           <artifactId>quartz-jobs</artifactId>
           <version>2.2.1</version>
       </dependency>
       <dependency>
           <groupId>org.apache.xbean</groupId>
           <artifactId>xbean-spring</artifactId>
           <version>4.2</version>
       </dependency>
JAVA代码
public class MyJob {
   /**
    * Cron表达式   七子表达式
    * 秒       分       时         日       月       周       年
    * 范围:   0-59   0-59     0-23        1-31    1-12      1-7     2018-2099
    * <p>
    * 0 20 12 ? 12 1 2018
    * <p>
    * 常用的符号:
    * *       在范围之内任意
    * ?      放弃  只能出现在日或周的位置上 并且只能出现一个
    * m/n     从m开始每n执行
    * m-n     m到n的范围
    * a,s,d,f,g,h:指定时间
    * <p>
    * <p>
    * L:last
    * <p>
    * 每个月末中午12点整
    * 0 0 12 L * ? *
    * 秒       分       时         日       月       周       年
    * 每季度末上午10点15分
    * 0 15 10 l 3,6,9,12 ? *
    * 每季初末上午10点15分
    * 0 15 10 1 3,6,9,12 ? *
    */
   public void showTime() {
       System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
   }


   public void showTim1212e() {
       System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
   }
}
applicationContext_job.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="
     http://www.springframework.org/schema/beans
     http://www.springframework.org/schema/beans/spring-beans.xsd">

   <!-- 定义一个任务类 -->
   <bean id="myJob" class="fun.chenqi.job.MyJob">
   </bean>
   <!-- 任务类描述 -->
   <bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
       <property name="targetObject" ref="myJob"/>
       <property name="targetMethod" value="showTime"/>
   </bean>
   <!-- 触发器  -->
   <bean id="mailTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
       <property name="jobDetail" ref="jobDetail"/>
       <!-- 秒       分       时         日       月       周       年-->
       <property name="cronExpression" value="1,4,12,23,34,45,21,11 * * * * ?"/>
   </bean>
   <!-- 总管理容器 -->
   <bean id="startQuartz" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
       <property name="triggers">
           <list>
               <ref bean="mailTrigger"/>
           </list>
       </property>
   </bean>

</beans>
 


发表评论