Spring Boot笔记(六) springboot 集成 timer 定时任务
2024-09-03 17:55:25
个人博客网:https://wushaopei.github.io/ (你想要这里多有)
1、创建具体要执行的任务类:
package com.example.poiutis.timer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.TimerTask;
/**
* @ClassName MyTimeTask
* @Description TODO
* @Author wushaopei
* @Date 2019/7/26 15:55
* @Version 1.0
*/
public class MyTimeTask extends TimerTask{
private static Logger logger = LoggerFactory.getLogger(MyTimeTask.class);
private String name;
public MyTimeTask(String inputName){
name = inputName;
}
@Override
public void run() {
//打印当前name 的内容
System.out.println("Current exec name is " + name);
logger.info(System.currentTimeMillis()+"111");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
run()方法中是要执行的任务代码,定时器启动时会执行 run() 方法中的业务逻辑 ;
2、创建 timer 的 实例工作类:
package com.example.poiutis.timer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.Trigger;
import java.sql.Time;
import java.util.Timer;
/**
* @ClassName MyTimer
* @Description TODO
* @Author wushaopei
* @Date 2019/7/26 15:57
* @Version 1.0
*/
@Configuration
public class MyTimer {
// public static void main(String[] args) {
@Bean
public void testQuartzTrigger1() {
//1.创建一个timer实例
Timer timer = new Timer();
//2.创建一个MyTimerTask实例
MyTimeTask myTimeTask = new MyTimeTask("No.1");
//3.通过timer定时定频率调用myTimerTask的业务逻辑
// 即 第一次执行是在当前时间的两秒之后,之后每隔一秒钟执行一次\
timer.schedule(myTimeTask,2000L,1000L);
}
}
添加@Configuration 注解,自动注入实例对象,并由springboot 启动 定时器,执行任务。
注意: 使用springboot 时保证包扫描路径是正确的;
执行效果:
最新文章
- Windows 10 安装 Sql Server 2014 反复提示需要安装 .NET Framework 3.5 SP1 的解决方案
- 循序渐进Python3(十)-- 1 -- pymysql
- Mysql 5.7.12解压版的安装及配置系统编码
- IOS第14天(1,UITabBarController的基本的使用)
- iOS 数组内中英文混合排序
- 学习RSA公开密钥算法
- wpf 大控件 打印 将控件转成 xps格式 并分页打印
- 搭建rtmp直播流服务之3:java开发ffmpeg实现rtsp转rtmp并实现ffmpeg命令的接口化管理架构设计及代码实现
- [LeetCode] Flood Fill 洪水填充
- Docker系列03—Docker 基础入门
- 树莓派3代B+安装mateubuntu16.04
- Volley使用
- POJ 1733 Parity game 【带权并查集】+【离散化】
- 2016 Russian Code Cup (RCC 16), Final Round B - Cactusophobia
- CentOS 7 yum 安装mysql5.6
- Java之集合(二十六)ConcurrentSkipListMap
- Electron build 无法下载 winCodeSign 等资源
- Namespace declaration statement has to be the very first statement in the script
- Codevs3008 加工生产调度
- 安装 jdk