@Scheduled注解的使用

cron

cron这个参数必须要接受一个cron表达式

cron表达式是个啥呢,Cron表达式是一个具有时间含义的字符串,字符串以5个空格隔开,分为6个域,格式为 X X X X X X 。 其中 X 是一个域的占位符。单个域有多个取值时,使用半角逗号, 隔开取值。 每个域可以是确定的取值,也可以是具有逻辑意义的特殊字符

 //这个就是在每次凌晨1点的时候执行
@Scheduled(cron = "0 0 1 * * ?")

cron表达式语法自行百度,应该很多

或者找个网站,像是这个https://cron.qqe2.com/

fixedDelay

简单来说,就是在上一次执行完以后再过一个参数的时间以后再次执行,它的间隔时间是根据上次的任务结束的时候开始计时的

 //这个就是在上一次执行完以后再过半个小时再次执行
@Scheduled(fixedDelay = 30 * 60 *1000)

像上面的就是,当这个方法在一次执行结束后,开始进行时间的计算,然后再计算时间达到半个小时的时候,就开始再次执行该方法

fixedRate

这个和fixedDelay类似,但又不是一样的,它的间隔时间是根据上次任务开始的时候计时的

 //这个就是在上一次开始的时间点以后数半个小时再次执行
@Scheduled(fixedRate = 30 * 60 *1000)

比如说,一个方法上设置了fiexdRate = 30 * 60 *1000,那么在执行这个方法的时候,假如说这个方法执行了十分钟,那么下次执行这个方法就是在这个方法结束之后的二十分钟后再次执行,而不是说半个小时

不过这个有的时候会堵塞,如果前一个没有执行完,后一个就已经开始了,那么就是堵塞,慢慢的就堵了,走一个下一个接着执行,不会在此等待了

initialDelay

简单来说,作用就是在一个延迟执行的操作,先延迟一段时间以后再进行定时操作

//在第一次的时候首先延迟10秒,然后再执行,执行完第一次以后就开始之后按fixedRate的规则进行定时操作,每15秒执行一次
@Scheduled(initialDelay=10000, fixedRate=15000)

【Java】@Scheduled常用的注解的使用的更多相关文章

  1. Java 注释类之常用元注解

    Java 注释类之常用元注解 自定义Java注释类时,我们使用方式如下:   @Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD ...

  2. Spring中常用的注解,你知道几个呢?

    今天给大家分享下Spring中一般常用的注解都有哪些.可能很多人做了很长是了但有些还是不知道一些注解,不过没有关系,你接着往下看. Spring部分 1.声明bean的注解 @Component 组件 ...

  3. java目前常用的几种定时任务

    java目前常用的几种定时任务 JDK自带的Timer spring的Task Quartz elastic-job分布式定时任务 一.JDK自带的Timer Timer是jdk中提供的一个定时器工具 ...

  4. Java学习记录-注解

    注解 一.org.springframework.web.bind.annotation ControllerAdviceCookieValue : 可以把Request header中关于cooki ...

  5. Spring MVC常用的注解类

    一.注解类配置 要使用springmvc的注解类,需要在springmvc.xml配置文件中用context:component-scan/扫描:  二.五大重要的注解类 1.RequestMapp ...

  6. JUnit 4 使用 Java 5 中的注解(annotation)

    JUnit 4 使用 Java 5 中的注解(annotation),以下是JUnit 4 常用的几个 annotation 介绍@Before:初始化方法@After:释放资源@Test:测试方法, ...

  7. Junit中常用的注解说明

    Java注解((Annotation)的使用方法是@注解名 ,能通过简单的词语来实现一些功能.在junit中常用的注解有@Test.@Ignore.@BeforeClass.@AfterClass.@ ...

  8. JAVA提高五:注解Annotation

    今天我们学习JDK5.0中一个非常重要的特性,叫做注解.是现在非常流行的一种方式,可以说因为配置XML 比较麻烦或者比容易查找出错误,现在越来越多的框架开始支持注解方式,比如注明的Spring 框架, ...

  9. JPA之常用 基本注解

    1.常用基本注解 @Entity @Table @Basic @Column @GeneratedValue @Id 2.特殊注解 @Transient @Temporal 用 table 来生成主键 ...

随机推荐

  1. Mybatis:Mybatis 逆向工程 generator配置

    一.使用Maven方式引入Mybatis依赖Jar包(版本号自己改或定义)

  2. 码云使用svn无法提交空文件夹

    错误信息: svn: E200015: Commit failed (details follow): svn: E200015: Empty directories is not supported ...

  3. nohup &的用法、进程查看以及终止

    p.p1 { margin: 0 0 2px; font: 16px ".PingFang SC" } p.p2 { margin: 0; font: 12px "Hel ...

  4. linux 中只显示目录的几种方法

    ls 参数 -a 表示显示所有文件,包含隐藏文件-d 表示显示目录自身的属性,而不是目录中的内容-F 选项会在显示目录条目时,在目录后加一个/ ls -l total 8 drwxrwxr-x 2 r ...

  5. 第十一章:random库概述

    random库是使用随机数的python标准库 伪随机数:采用梅森旋转算法生成的伪随机序列中的元素 random库主要用于产生随机数 使用random库:import random random库的概 ...

  6. 题解 guP3956 棋盘

    好吧本来这题可以用最短路跑完的,结果我硬是打了1.5小时的dfs... 其实这题并没有那么难,构造一个无向图再跑最短路即可. 我用的dj跑最短路 问题来了 如果(n,n)是无色的,那么图上就没有这个点 ...

  7. 家庭账本开发day05

    套用layUI模板,成功完成账单的添加,并且能同时对用户的余额进行增加和减少

  8. facade层,service 层,domain层,dao 层设计

    转自http://fei-6666.iteye.com/blog/446247,记录下来 一,Service->DAO,只能在Service中注入DAO. 二,DAO只能操作但表数据,跨表操作放 ...

  9. Kettle——shell交互命令

    Kettle--shell交互命令 在kettle上开发了job或transform可以以单独的文件存在,也可以存放在资源库中.调用这些程序可以通过shell脚本调用,记录下: 资源库中的job: . ...

  10. StreamAPI

    一.简介 Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利.高效的聚合操作,或者大批量数据操作 . Stream API 借助于同样 ...