您好,登錄后才能下訂單哦!
來來來小伙伴們,基于上篇的郵件服務(wù),定時任務(wù)就不單獨分項目了,天然整合進了郵件服務(wù)中。
不知道,大家在工作之中,經(jīng)常會用到那些定時任務(wù)去執(zhí)行特定的業(yè)務(wù),這里列舉一下我在工作中曾經(jīng)使用到的幾種實現(xiàn)。
任務(wù)介紹
項目應(yīng)用
創(chuàng)建任務(wù)
代碼中,可以發(fā)現(xiàn),sendMail方法上注解被注釋掉了,目前我們采用的是xml配置實現(xiàn)的。
import org.springframework.stereotype.Component; /** * 統(tǒng)計失敗郵件定時重新發(fā)送 * 創(chuàng)建時間 2017年7月21日 * */ @Component("sendMail") public class SendMail { //@Scheduled(cron = "0/5 * * * * ?") public void sendMail() { System.out.println("統(tǒng)計失敗郵件定時重新發(fā)送開始"); } }
配置文件
<!-- 配置任務(wù)線性池 --> <task:executor id="executor" pool-size="5" /> <task:scheduler id="scheduler" pool-size="5"/> <!-- 啟用注解驅(qū)動的定時任務(wù) --> <task:annotation-driven executor="executor" scheduler="scheduler" proxy-target-class="true"/> <task:scheduled-tasks scheduler="scheduler"> <!-- 統(tǒng)計失敗郵件定時重新發(fā)送 --> <task:scheduled ref="sendMail" method="sendMail" cron="0/5 * * * * ?"/> </task:scheduled-tasks>
啟動項目
/** * 啟動類 * 創(chuàng)建時間 2017年7月19日 * */ @EnableAutoConfiguration @ComponentScan(basePackages={"com.itstyle.main"}) @ImportResource({"classpath:spring-context-dubbo.xml","classpath:spring-context-task.xml"}) public class Application { private static final Logger logger = Logger.getLogger(Application.class); public static void main(String[] args) throws InterruptedException { SpringApplication.run(Application.class, args); logger.info("項目啟動 "); } }
啟動后,控制臺會每5s打印”統(tǒng)計失敗郵件定時重新發(fā)送開始”。當(dāng)然Scheduled的功能不僅僅如此,我們查找源碼Scheduled類,可以發(fā)現(xiàn)還有一些注解屬性,這里就不一一為大家介紹了??傊?,要養(yǎng)成查看源碼API的習(xí)慣。
@Target({ java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.ANNOTATION_TYPE }) @Retention(RetentionPolicy.RUNTIME) @Documented @Repeatable(Schedules.class) public @interface Scheduled { public abstract String cron(); public abstract String zone(); public abstract long fixedDelay(); public abstract String fixedDelayString(); public abstract long fixedRate(); public abstract String fixedRateString(); public abstract long initialDelay(); public abstract String initialDelayString(); }
項目:spring-boot-mail_jb51.rar
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。