spring 通过注解方式配置定时任务



spring 通过注解方式配置定时任务。

1:spring 配置文件中增加这句

Java代码 复制代码 收藏代码
  1. <task:annotation-driven/>  
 <task:annotation-driven/>

2:确保扫描程序能够扫描后  下面第3步骤的java类

Java代码 复制代码 收藏代码
  1. <context:component-scan base-package=”cms”/>  
<context:component-scan base-package="cms"/>

3:AnnotationQuartz.java

Java代码 复制代码 收藏代码
  1. package cms;   
  2.   
  3. import base.util.BaseDateUtil;   
  4. import org.springframework.scheduling.annotation.Scheduled;   
  5. import org.springframework.stereotype.Component;   
  6.   
  7. import java.util.Date;   
  8.   
  9. /**  
  10.  * User: liuwentao  
  11.  * Time: 13-10-22 下午3:36  
  12.  * 小说城网站欢迎访问: http://www.xiaoshuocity.com  
  13.  */  
  14. @Component  
  15. public class AnnotationQuartz {   
  16.     @Scheduled(cron = ”0 0/1 15,* * * ?”)   
  17.     //需要注意@Scheduled这个注解,它可配置多个属性:cron\fixedDelay\fixedRate   
  18.     public void test() {   
  19.         String dateStr = BaseDateUtil.getFormatString(new Date(), ”yyyy-MM-dd HH:mm:ss”);   
  20.         System.out.println(“小说城 www.xiaoshuocity.com 每分钟执行一次:” + dateStr);   
  21.     }   
  22. }  
package cms;

import base.util.BaseDateUtil;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * User: liuwentao
 * Time: 13-10-22 下午3:36
 * 小说城网站欢迎访问: http://www.xiaoshuocity.com
 */
@Component
public class AnnotationQuartz {
    @Scheduled(cron = "0 0/1 15,* * * ?")
    //需要注意@Scheduled这个注解,它可配置多个属性:cron\fixedDelay\fixedRate
    public void test() {
        String dateStr = BaseDateUtil.getFormatString(new Date(), "yyyy-MM-dd HH:mm:ss");
        System.out.println("小说城 www.xiaoshuocity.com 每分钟执行一次:" + dateStr);
    }
}

4:spring 定时器 时间表达式解释

引用
“0 0 12 * * ?”
Fire at 12pm (noon) every day

“0 15 10 ? * *”
Fire at 10:15am every day

“0 15 10 * * ?”
Fire at 10:15am every day

“0 15 10 * * ? *”
Fire at 10:15am every day

“0 15 10 * * ? 2005″
Fire at 10:15am every day during the year 2005

“0 * 14 * * ?”
Fire every minute starting at 2pm and ending at 2:59pm, every day

“0 0/5 14 * * ?”
Fire every 5 minutes starting at 2pm and ending at 2:55pm, every day


“0 0/5 14,18 * * ?”
Fire every 5 minutes starting at 2pm and ending at 2:55pm, AND fire every 5 minutes starting at 6pm and ending at 6:55pm, every day

“0 0-5 14 * * ?”
Fire every minute starting at 2pm and ending at 2:05pm, every day

“0 10,44 14 ? 3 WED”
Fire at 2:10pm and at 2:44pm every Wednesday in the month of March.

“0 15 10 ? * MON-FRI”
Fire at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday

“0 15 10 15 * ?”
Fire at 10:15am on the 15th day of every month

“0 15 10 L * ?”
Fire at 10:15am on the last day of every month

“0 15 10 ? * 6L”
Fire at 10:15am on the last Friday of every month

“0 15 10 ? * 6L”
Fire at 10:15am on the last Friday of every month

“0 15 10 ? * 6L 2002-2005″
Fire at 10:15am on every last friday of every month during the years 2002, 2003, 2004 and 2005

“0 15 10 ? * 6#3″
Fire at 10:15am on the third Friday of every month

5:执行效果

  • 大小: 209.6 KB