zoukankan      html  css  js  c++  java
  • 使用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秒钟运行一次。

  • 相关阅读:
    为什么今天的L4无人驾驶无法到达终局(转)
    各种卷积类型Convolution
    关于快速、深入理解需求
    测试注意事项及工作标准
    测试工作指引
    测试验收工作指引
    Jmeter的json提取器使用
    高等数学:第一章 函数与极限
    vscode
    Python模块查找路径
  • 原文地址:https://www.cnblogs.com/liwei1994/p/10533565.html
Copyright © 2011-2022 走看看