本文将告诉你如何使用spring的任务调度。主要使用@Scheduled注解
需要会使用maven第一步 pom.xml配置
第二步 定时任务类(ScheduledTasks)4.0.0 org.xxz scheduled-task-test 1.0 org.springframework.boot spring-boot-starter-parent 2.0.0.RELEASE 1.8 org.springframework.boot spring-boot-starter org.projectlombok lombok org.springframework.boot spring-boot-maven-plugin
package org.xxz.task; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import lombok.extern.slf4j.Slf4j; @Slf4j @Component public class ScheduledTasks { @Scheduled(fixedRate = 5000) public void now() { log.info("The time is now {}", new Date()); } }
@Scheduled有三种类型参数fixedRate, fixedDelay, cron
fixedRate 表示每隔多少毫秒执行一次
fixedDelay 表示任务执行完成后隔多少毫秒执行一次
cron 定时任务表达式
第三步 启动类(Application)package org.xxz; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.scheduling.annotation.EnableScheduling; @SpringBootApplication @EnableScheduling public class Application { public static void main(String[] args) throws Exception { SpringApplication.run(Application.class); } }第四步 打包运行
cd scheduled-task-test mvn clean package java -jar target/scheduled-task-test-1.0.jar
扩展知识:如果不想使用spring的任务调度,可以使用jdk自带的任务调度类
ScheduledExecutorService#schedule
ScheduledExecutorService#scheduleAtFixedRate
ScheduledExecutorService#scheduleWithFixedDelay
今天的分享就到这里了。谢谢阅读。
原文地址:https://blog.uyiplus.com/2018/spring-scheduling-tasks/
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/68712.html
本文来自网络一些博客的整理(包括gong1208的博客 dary1715的博客) 1、简介 这个系列介绍Spring框架实现定时任务的两种方式以及一些高级的用法,包括: 1、使用Quartz,这是一个功能比较强大的的调度器,可以让你的程序在指定时间执行,也可以按照某一个频度执行,配置起来稍显复杂,稍后会详细介绍。 2、Spring3.0以后自带的task,可以将它看成一个轻量级的Quartz,而且...
摘要:也是自带的一个基于线程池设计的定时任务类。其每个调度任务都会分配到线程池中的一个线程执行,所以其任务是并发执行的,互不影响。 原创不易,如需转载,请注明出处https://www.cnblogs.com/baixianlong/p/10659045.html,否则将追究法律责任!!! 一、在JAVA开发领域,目前可以通过以下几种方式进行定时任务 1、单机部署模式 Timer:jdk中...
摘要:一介绍在企业应用中,我们经常会碰到时间任务调度的需求,比如每天凌晨生成前天报表,每小时生成一次汇总数据等等。三者关系简单来说就是,调度器负责调度各个任务,到了某个时刻或者过了一定时间,触发器触动了,特定任务便启动执行。 一、Quartz介绍 在企业应用中,我们经常会碰到时间任务调度的需求,比如每天凌晨生成前天报表,每小时生成一次汇总数据等等。Quartz是出了名的任务调度框架,它可...
摘要:定时任务高级使用篇前面一篇博文之定时任务基本使用篇介绍了环境下,定时任务的简单使用姿势,也留了一些问题,这一篇则希望能针对这些问题给个答案定时任务进阶篇问题小结前面一篇博文,抛出了下面的几个问题,接下来则围绕问题进行分析一个项目中有多个定时 showImg(https://segmentfault.com/img/remote/1460000015880327); Spring定时任务...
摘要:当前时间打印当前时间定时任务触发,操作多个添加数据,事务中任一异常,都可以正常导致数据回滚。当前时间当前时间添加微服务启动类注解式配置定时任务,不支持任务调度。 SpringCloud(第 046 篇)注解式Schedule配置定时任务,不支持任务调度 - 一、大致介绍 1、很多时候我们需要隔一定的时间去执行某个任务,为了实现这样的需求通常最普通的方式就是利用多线程来实现; 2、但是有...
阅读 2640·2021-11-11 16:55
阅读 1281·2021-09-22 15:25
阅读 1799·2019-08-29 16:26
阅读 935·2019-08-29 13:21
阅读 2309·2019-08-23 16:19
阅读 2797·2019-08-23 15:10
阅读 765·2019-08-23 14:24
阅读 1852·2019-08-23 13:48