热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Hutool工具定时任务的使用

https:www.hutool.cndocs#core代码示例:1、pom.xml的配置

https://www.hutool.cn/docs/#/core

代码示例:

1、pom.xml的配置


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
org.example
test09202
1.0-SNAPSHOT




org.springframework.boot
spring-boot-starter
2.2.0.RELEASE


org.springframework.boot
spring-boot-starter-test
2.2.0.RELEASE
test


org.springframework.boot
spring-boot-starter-web
2.2.0.RELEASE


junit
junit
4.13
test



org.projectlombok
lombok
1.18.4
provided


cn.hutool
hutool-all
5.1.0


2、cron.setting定时任务的时间设置

#执行的类或对象方法所在的包的名字
[com.xdh.controller]
#需要执行的类名和方法
#每1分钟执行一次
TestHutoolCron.TestHutoolCron111
=* */1 * * *
#每10秒执行一次
TestHutoolCron.TestHutoolCron222
=*/10 * * * * *
#如果有第二个不同包的定时任务也可以继续添加[]里面是包名
#第二个包名
[com.xdh.controller2]
#每2分钟执行一次
TestHutoolCron2.TestHutoolCron01
=* */2 * * *
#每20秒执行一次
TestHutoolCron2.TestHutoolCron02
=*/20 * * * * *

3、TestHutoolCron代码

import cn.hutool.core.date.DateUtil;
import cn.hutool.log.Log;
import cn.hutool.log.LogFactory;
import java.util.Date;
public class TestHutoolCron {
private static final Log log = LogFactory.get();
public void TestHutoolCron111(){
System.out.println(
"定时任务,每1分钟执行一次"+ DateUtil.formatDateTime(new Date()));
}
public void TestHutoolCron222(){
System.out.println(
"定时任务,每10秒执行一次"+ DateUtil.formatDateTime(new Date()));
}
}

4、TestHutoolCron2代码

import cn.hutool.core.date.DateUtil;
import cn.hutool.log.Log;
import cn.hutool.log.LogFactory;
import java.util.Date;
public class TestHutoolCron2 {
private static final Log log = LogFactory.get();
public void TestHutoolCron01(){
System.out.println(
"定时任务,每2分钟执行一次"+ DateUtil.formatDateTime(new Date()));
}
public void TestHutoolCron02(){
System.out.println(
"定时任务,每20秒执行一次"+ DateUtil.formatDateTime(new Date()));
}
}

5、SpringBoot启动类代码

import cn.hutool.core.lang.Console;
import cn.hutool.cron.CronUtil;
import cn.hutool.cron.task.Task;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootQuartzApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootQuartzApplication.
class,args);
//动态的添加定时任务每5秒执行一次
CronUtil.schedule("*/5 * * * * *", new Task() {
@Override
public void execute() {
Console.log(
"动态定时任务,每5秒执行一次");
}
});
//支持秒级
CronUtil.setMatchSecond(true);
//开启定时任务
CronUtil.start(true);
}
}

测试结果:

动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每20秒执行一次2021
-09-02 17:28:40
定时任务,每10秒执行一次2021
-09-02 17:28:40
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每10秒执行一次2021
-09-02 17:28:50
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每10秒执行一次2021
-09-02 17:29:00
定时任务,每20秒执行一次2021
-09-02 17:29:00
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每10秒执行一次2021
-09-02 17:29:10
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每10秒执行一次2021
-09-02 17:29:20
定时任务,每20秒执行一次2021
-09-02 17:29:20
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每10秒执行一次2021
-09-02 17:29:30
定时任务,每1分钟执行一次2021
-09-02 17:29:30
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每20秒执行一次2021
-09-02 17:29:40
定时任务,每10秒执行一次2021
-09-02 17:29:40
动态定时任务,每5秒执行一次
动态定时任务,每5秒执行一次
定时任务,每10秒执行一次2021
-09-02 17:29:50


原文链接:https://www.cnblogs.com/nastu/p/15219869.html



推荐阅读
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
  • SpringBoot简单日志配置
     在生产环境中,只打印error级别的错误,在测试环境中,可以调成debugapplication.properties文件##默认使用logbacklogging.level.r ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • 在springmvc框架中,前台ajax调用方法,对图片批量下载,如何弹出提示保存位置选框?Controller方法 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • 网络请求模块选择——axios框架的基本使用和封装
    本文介绍了选择网络请求模块axios的原因,以及axios框架的基本使用和封装方法。包括发送并发请求的演示,全局配置的设置,创建axios实例的方法,拦截器的使用,以及如何封装和请求响应劫持等内容。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • 本文介绍了使用Spark实现低配版高斯朴素贝叶斯模型的原因和原理。随着数据量的增大,单机上运行高斯朴素贝叶斯模型会变得很慢,因此考虑使用Spark来加速运行。然而,Spark的MLlib并没有实现高斯朴素贝叶斯模型,因此需要自己动手实现。文章还介绍了朴素贝叶斯的原理和公式,并对具有多个特征和类别的模型进行了讨论。最后,作者总结了实现低配版高斯朴素贝叶斯模型的步骤。 ... [详细]
author-avatar
木扎尔特2502918527
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有