亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用SpringBoot中的Schedule定時發(fā)送郵件的方法

 更新時間:2023年08月08日 09:28:58   作者:DaenCode  
在SpringBoot中,你可以使用@Scheduled注解來創(chuàng)建定時任務,@Scheduled注解可以應用于方法上,表示這個方法是一個定時任務,可以根據(jù)指定的時間間隔或固定時間執(zhí)行,本文就給大家介紹一下如何使用SpringBoot中的Schedule定時發(fā)送郵件,需要的朋友可以參考下

思維導圖

介紹

  • 基本概念:定時任務從字面不難看出,定時任務意思就是定時處理某種任務。
  • 使用場景:比如說定時發(fā)送郵件、消息提醒等等。
  • 常見的定時任務:Java.util.TImer、Quartz2、SpringBoot中的Schedule。

本文的主要內容以springboot中的Schedule為例,來帶大家看看如何使用其做定時任務。

必不可少的注解

@EnableScheduling :用于標識啟動類開啟定時任務。

@Component :用于標識定時任務類,讓Spring掃描其為組件。

@Scheduled :用戶標識在定時任務方法上,配置定時的規(guī)則。

入門案例

啟動類添加@EnableScheduling

啟動類添加@EnableScheduling負責開啟定時任務功能。

@SpringBootApplication
@MapperScan("com.shoanjen.redis.mapper")
@EnableScheduling
public class RedisApplication {
	public static void main(String[] args) {
		SpringApplication.run(RedisApplication.class, args);
	}
}

定義定時任務類

定義定時任務類,并標注@Component注解。

定義定時任務方法并標識@Schduled注解,每隔5秒在控制臺輸出日志。其中@Schedule參數(shù)如下

參數(shù)描述
cron指定一個Cron表達式,用于精確控制任務的執(zhí)行時間
zone指定用于解析Cron表達式的時區(qū),默認為服務器的默認時區(qū)
fixedDelay指定任務結束后的延遲時間(毫秒),用于控制下一次任務執(zhí)行的間隔
fixedDelayStringfixedDelay類似,但可以使用字符串表示延遲時間
fixedRate指定任務開始執(zhí)行后的間隔時間(毫秒),用于控制連續(xù)任務之間的間隔
fixedRateStringfixedRate類似,但可以使用字符串表示間隔時間
initialDelay指定任務首次執(zhí)行前的延遲時間(毫秒)
initialDelayStringinitialDelay類似,但可以使用字符串表示延遲時間

有關于Cron表達式的配置可以參考此網(wǎng)址:Cron小工具

在這里插入圖片描述

@Component
public class ScheduleService {
    @Scheduled(fixedRate = 5000)
    //@Scheduled(fixedDelay = 5000)
    public void scheduleConsole(){
        System.out.println("定時任務要開始了喲?。。。?);
    }
}

效果

在這里插入圖片描述

定時發(fā)送郵件

引入相關依賴

<!-- Spring Mail依賴 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

126郵箱配置

1.開啟POP3/SMTP服務

在這里插入圖片描述

在這里插入圖片描述

2.點擊開啟后,會發(fā)送短信獲取授權碼,注意要保存授權碼只顯示一次!?。?!

在這里插入圖片描述

修改項目配置文件

spring.mail.host=smtp.126.com
spring.mail.username=XXXXXX@126.com
spring.mail.password=這里就是你剛剛的授權碼喲!

編寫定時任務方法

在這里就舉一個簡單的發(fā)送驗證碼例子來進行演示。下方類中的定時任務方法用來 每天21:34定時向郵件發(fā)送驗證碼的功能

@Component
public class ScheduleService {
    @Autowired
    private JavaMailSender mailSender;
    @Scheduled(cron = "0 34 21 * * ?")
    public void scheduleMailTo(){
        SimpleMailMessage message = new SimpleMailMessage();
        //隨機驗證碼
        Random random=new Random();
        int code=random.nextInt(9999)+1;
        // 發(fā)件人,配置文件中的郵件地址
        message.setFrom("xxxxx@126.com");
        // 收件人
        message.setTo("xxxxx@163.com");
        //設置郵件標題
        message.setSubject("注冊驗證碼");
        // 郵件內容
        message.setText("Hello歡迎使用xxx系統(tǒng),您的注冊驗證碼為"+code);
        mailSender.send(message);
        System.out.println("郵件發(fā)送已完成哦?。。?);
    }
}

最終效果

最終效果請查看紅框!

在這里插入圖片描述

寫在最后

有關于SpringBoot中Schedule定時任務的方法到此就結束啦,希望對閱讀本文的你們有幫助哦。同時有疑問可以在評論區(qū)留言,謝謝大家!

以上就是使用SpringBoot中的Schedule定時發(fā)送郵件的方法的詳細內容,更多關于SpringBoot Schedule定時發(fā)送郵件的資料請關注腳本之家其它相關文章!

相關文章

  • Java如何將BigDecimal類型的值轉成double類型

    Java如何將BigDecimal類型的值轉成double類型

    這篇文章主要給大家介紹了關于Java如何將BigDecimal類型的值轉成double類型的相關資料,需要注意精度損失和范圍限制,使用doubleValue方法進行轉換,并在高精度計算時格外小心,需要的朋友可以參考下
    2024-12-12
  • 如何使用IntelliJ IDEA的HTTP Client進行接口驗證

    如何使用IntelliJ IDEA的HTTP Client進行接口驗證

    這篇文章主要介紹了如何使用IntelliJ IDEA的HTTP Client進行接口驗證,本文給大家分享最新完美解決方案,感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • java 中String.equals和==的比較

    java 中String.equals和==的比較

    這篇文章主要介紹了java 中String.equals和==的比較的相關資料,需要的朋友可以參考下
    2017-08-08
  • 關于JDK8中的字符串拼接示例詳解

    關于JDK8中的字符串拼接示例詳解

    字符串拼接問題應該是每個Java程序員都熟知的事情了,幾乎每個Java程序員都讀過關于StringBuffer/StringBuilder來拼接字符串。下面這篇文章主要給大家介紹了關于JDK8中的字符串拼接的相關資料,需要的朋友可以參考下。
    2018-04-04
  • Java 8 Stream流強大的原理

    Java 8 Stream流強大的原理

    這篇文章主要介紹了Java 8 Stream流強大的原理,Java 8 API添加了一個新的抽象稱為流Stream,可以讓你以一種聲明的方式處理數(shù)據(jù)。本文會對Stream的實現(xiàn)原理進行剖析,具有一定的參考價值,需要的朋友可以參考一下
    2021-12-12
  • Spring中的循環(huán)依賴詳解

    Spring中的循環(huán)依賴詳解

    這篇文章主要介紹了Spring中的循環(huán)依賴詳解,  Spring 框架是一個流行的Java應用程序框架,它提供了許多強大的功能,如依賴注入和面向切面編程,然而在使用 Spring 框架時,我們可能會遇到循環(huán)依賴的問題,需要的朋友可以參考下
    2023-09-09
  • Spring-webflux訪問關系型數(shù)據(jù)庫實戰(zhàn)

    Spring-webflux訪問關系型數(shù)據(jù)庫實戰(zhàn)

    這篇文章主要為大家介紹了Spring-webflux訪問關系型數(shù)據(jù)庫實戰(zhàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 基于spring boot 命令行啟動的一些坑

    基于spring boot 命令行啟動的一些坑

    這篇文章主要介紹了spring boot 命令行啟動的一些坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Springboot項目的搭建教程(分離出common父依賴)

    Springboot項目的搭建教程(分離出common父依賴)

    這篇文章主要介紹了Springboot項目的搭建教程(分離出common父依賴),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 聊聊Springboot2.x的session和cookie有效期

    聊聊Springboot2.x的session和cookie有效期

    這篇文章主要介紹了Springboot2.x的session和cookie有效期,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09

最新評論