定時(shí)任務(wù)實(shí)現(xiàn)的幾種方式:
Timer:這是java自帶的java.util.Timer類,這個(gè)類允許你調(diào)度一個(gè)java.util.TimerTask任務(wù)逗物。使用這種方式可以讓你的程序按照某一個(gè)頻度執(zhí)行,但不能在指定時(shí)間運(yùn)行瑟俭。一般用的較少翎卓。
ScheduledExecutorService:也jdk自帶的一個(gè)類;是基于線程池設(shè)計(jì)的定時(shí)任務(wù)類,每個(gè)調(diào)度任務(wù)都會(huì)分配到線程池中的一個(gè)線程去執(zhí)行,也就是說,任務(wù)是并發(fā)執(zhí)行,互不影響摆寄。
Spring Task:Spring3.0以后自帶的task失暴,可以將它看成一個(gè)輕量級的Quartz坯门,而且使用起來比Quartz簡單許多。
Quartz:這是一個(gè)功能比較強(qiáng)大的的調(diào)度器逗扒,可以讓你的程序在指定時(shí)間執(zhí)行田盈,也可以按照某一個(gè)頻度執(zhí)行,配置起來稍顯復(fù)雜缴阎。
Timer:
ScheduledExecutorService:
使用Spring Task
簡單的定時(shí)任務(wù)
在SpringBoot項(xiàng)目中,我們可以很優(yōu)雅的使用注解來實(shí)現(xiàn)定時(shí)任務(wù)简软,首先創(chuàng)建項(xiàng)目蛮拔,導(dǎo)入依賴:
創(chuàng)建任務(wù)類:
在主類上使用@EnableScheduling注解開啟對定時(shí)任務(wù)的支持,然后啟動(dòng)項(xiàng)目
來源:
https://www.baidu.com/link?url=RuCeIJgCfBV1Z0lo2LT7RDvhX6CRnfTgmRBpXtCnOhq8e3Xr8pTStbxBLnGHGRrm_PaQbFjGhJiMEVLaokb_Xa&wd=&eqid=e5be19b50001ee04000000035bd08ab0