springboot使用SpringTask实现定时任务
SpringTask是Spring自主研发的轻量级定时任务工具,相比于Quartz更加简单方便,且不需要引入其他依赖即可使用。
只需要在配置类中添加一个@EnableScheduling注解即可开启SpringTask的定时任务能力。
/** * 定时任务配置 * Created by xc on 190830 */ @Configuration @EnableScheduling public class SpringTaskConfig { }
添加OrderTimeOutCancelTask来执行定时任务
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | @Component public class OrderTimeOutCancelTask { private Logger LOGGER = LoggerFactory.getLogger(OrderTimeOutCancelTask. class ); /** * cron表达式:Seconds Minutes Hours DayofMonth Month DayofWeek [Year] */ @Scheduled (cron = "0/15 * * * * ?" ) private void cancelTimeOutOrder() { LOGGER.info( "定时任务OrderTimeOutCancelTask" ); } @Scheduled (fixedDelay = 100000 ) // fixedDelay = 1000表示在当前任务执行结束1秒后开启另一个任务 public void fixedDelay() { System.out.println( "fixedDelay:" + new Date()); } @Scheduled (fixedRate = 200000 ) // fixedRate = 2000表示在当前任务开始执行2秒后开启另一个定时任务 public void fixedRate() { System.out.println( "fixedRate:" + new Date()); } @Scheduled (initialDelay = 100000 , fixedRate = 200000 ) // initialDelay = 1000则表示首次执行的延迟时间 public void initialDelay() { System.out.println( "initialDelay:" + new Date()); } @Scheduled (cron = "0 * * * * ?" ) // 表示该定时任务每分钟执行一次 public void cron() { System.out.println( "cron:" + new Date()); } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律