Springboot之配置定时任务

1、在启动类上加注解开启定时任务(定时任务可以写在启动类中)

package com.gxr.imybatisplus;

import com.gxr.imybatisplus.service.schedule.MyScheduleService;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;

@SpringBootApplication
@MapperScan("com.gxr.imybatisplus.mapper")
@EnableScheduling
public class IMybatisPlusApplication {

    @Autowired
    MyScheduleService Myservice;

    public static void main(String[] args) {
        SpringApplication.run(IMybatisPlusApplication.class, args);
    }

    /**
     * 定时执行,每次插入一条数据
     */
    @Scheduled(cron = "*/5 * * * * ?")
    private void ScheduleTask() {
        String tableName = "t_sample_s_pg1";
        Myservice.insertOne(tableName);
    }

}

2、编写测试定时任务类 

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Logger;

@Service
public class MySchedule {
    private final Logger logger = Logger.getLogger(this.getClass().getName());


    /**
     * 定时任务举例
     */
    @Scheduled(cron = "0/1 * * * * *")
    public void test() {
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println(format.format(new Date()));
    }


}
原文地址:https://www.cnblogs.com/gongxr/p/13958288.html