使用Spring Task轻松完成定时任务

使用Spring Task轻松完成定时任务

一、背景 

  最近项目中需要使用到定时任务进行库存占用释放的需求,就总结了如何使用Spring Task进行简单配置完成该需求,本文介绍Spring3.0以后自定义开发的定时任务工具,

  spring task,我们可以将它比作一个轻量级的Quartz,使用简单方便,除spring相关的包外不需要额外的包,而且支持注解和配置文件两种形式,下面我会分别介绍这两种方式。

二、定时任务开发步骤

开发环境

  • Spring 4.2.6.RELEASE
  • Maven 3.3.9
  • JDK 1.7
  • Idea 15.04

【1】.基于配置文件

 1.编写普通java class

package com.hafiz.www.cron;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Desc:第一个基于SpringTask的调度任务
 * Created by hafiz.zhang on 2016/12/11.
 */
public class FirstCron {
    private static final Logger logger = LoggerFactory.getLogger(FirstCron.class);

    public void cron() {
        logger.info("定时任务进行中.......");
        // do something else
    }
}

2.在spring配置文件头中添加命名空间及描述(下面加粗处)并配置定时任务

 1 <beans xmlns="http://www.springframework.org/schema/beans"
 2        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3       xmlns:task="http://www.springframework.org/schema/task"
 4        xsi:schemaLocation="http://www.springframework.org/schema/beans
 5         http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
 6       http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd">
 7 
 8     <bean id="firstCron" class="com.hafiz.www.cron.FirstCron"/>
 9     <task:scheduled-tasks>
10         <task:scheduled ref="firstCron" method="cron" cron="0/5 * * * * ?"/>
11     </task:scheduled-tasks>
12 </beans>

我们设置每5秒钟运行一次。

posted @ 2019-03-14 21:19  ljcxy  阅读(274)  评论(0编辑  收藏  举报