国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能

這篇具有很好參考價(jià)值的文章主要介紹了Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java

????歡迎光臨,終于等到你啦????

??我是蘇澤,一位對(duì)技術(shù)充滿熱情的探索者和分享者。????

??持續(xù)更新的專欄《Spring 狂野之旅:從入門到入魔》 ??

本專欄帶你從Spring入門到入魔?

這是蘇澤的個(gè)人主頁(yè)可以看到我其他的內(nèi)容哦????

努力的蘇澤http://suzee.blog.csdn.net/


簡(jiǎn)介

本篇詳細(xì)講解定時(shí)任務(wù)如何構(gòu)建? 文末有詳細(xì)的實(shí)戰(zhàn)案例 定時(shí)發(fā)送郵件?

目錄

簡(jiǎn)介

介紹

定時(shí)任務(wù)調(diào)度技術(shù)是一種用于在預(yù)定時(shí)間或間隔時(shí)間執(zhí)行任務(wù)的技術(shù)。

Spring中的定時(shí)任務(wù)調(diào)度模塊簡(jiǎn)介

?編輯

Spring Schedule的基本用法

Cron表達(dá)式詳解

?編輯

定時(shí)任務(wù)的參數(shù)和返回值處理

處理定時(shí)任務(wù)方法的返回值:

定時(shí)任務(wù)的錯(cuò)誤處理與異常處理:

處理定時(shí)任務(wù)方法中的異常:

定時(shí)任務(wù)的錯(cuò)誤處理策略:

配置多個(gè)定時(shí)任務(wù):

并發(fā)執(zhí)行多個(gè)定時(shí)任務(wù):

控制定時(shí)任務(wù)的執(zhí)行順序:

實(shí)戰(zhàn)案例:定時(shí)發(fā)送郵箱

去QQ郵箱

開(kāi)啟這個(gè)服務(wù)

介紹

定時(shí)任務(wù)調(diào)度技術(shù)是一種用于在預(yù)定時(shí)間或間隔時(shí)間執(zhí)行任務(wù)的技術(shù)。

它允許開(kāi)發(fā)人員根據(jù)特定的時(shí)間表安排任務(wù)的執(zhí)行,可以是一次性任務(wù)或周期性任務(wù)。定時(shí)任務(wù)調(diào)度技術(shù)通常用于需要定期執(zhí)行的任務(wù),例如數(shù)據(jù)備份、定時(shí)報(bào)告生成、定時(shí)數(shù)據(jù)同步等。

Spring中的定時(shí)任務(wù)調(diào)度模塊簡(jiǎn)介


定時(shí)任務(wù)調(diào)度技術(shù)提供了一種方便和可靠的方式來(lái)執(zhí)行重復(fù)性或定期性的任務(wù)。它可以幫助開(kāi)發(fā)人員自動(dòng)化一些常規(guī)的任務(wù),減少人工干預(yù)和減輕人力負(fù)擔(dān)。

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java

Spring Schedule的基本用法

需要在項(xiàng)目的 Maven 依賴中添加 Spring Schedule 的相關(guān)依賴項(xiàng)??梢栽陧?xiàng)目的 pom.xml 文件中添加以下依賴項(xiàng):

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
</dependency>

然后,您需要在 Spring 配置文件中啟用定時(shí)任務(wù)調(diào)度功能??梢酝ㄟ^(guò)在配置類上添加注解?@EnableScheduling?來(lái)啟用定時(shí)任務(wù)調(diào)度。

  1. 創(chuàng)建定時(shí)任務(wù)方法:

在您的 Spring Bean 中創(chuàng)建一個(gè)方法,該方法將作為定時(shí)任務(wù)的執(zhí)行體??梢酝ㄟ^(guò)在方法上添加注解?@Scheduled?來(lái)標(biāo)識(shí)該方法是一個(gè)定時(shí)任務(wù)。

@Component
public class MyTask {
    @Scheduled(fixedDelay = 5000) // 每隔5秒執(zhí)行一次
    public void doTask() {
        // 執(zhí)行任務(wù)的邏輯
    }
}
  1. 配置定時(shí)任務(wù)執(zhí)行時(shí)間表達(dá)式:

可以使用?@Scheduled?注解的屬性來(lái)配置定時(shí)任務(wù)的執(zhí)行時(shí)間表達(dá)式。例如,可以使用?fixedDelay?屬性來(lái)指定任務(wù)的執(zhí)行間隔時(shí)間,或者使用?cron?屬性來(lái)指定任務(wù)的執(zhí)行時(shí)間規(guī)則。

import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
@EnableScheduling
public class MyTask {
    
    // 固定延遲執(zhí)行,每隔5秒執(zhí)行一次
    @Scheduled(fixedDelay = 5000)
    public void fixedDelayTask() {
        System.out.println("Fixed delay task executed.");
    }
    
    // 固定頻率執(zhí)行,每隔3秒執(zhí)行一次
    @Scheduled(fixedRate = 3000)
    public void fixedRateTask() {
        System.out.println("Fixed rate task executed.");
    }
    
    // Cron 表達(dá)式執(zhí)行,每分鐘的第30秒執(zhí)行一次
    @Scheduled(cron = "30 * * * * *")
    public void cronTask() {
        System.out.println("Cron task executed.");
    }
}
  1. 運(yùn)行定時(shí)任務(wù):

當(dāng) Spring 應(yīng)用啟動(dòng)時(shí),定時(shí)任務(wù)將自動(dòng)開(kāi)始執(zhí)行。您可以查看日志或其他輸出來(lái)確認(rèn)定時(shí)任務(wù)的執(zhí)行情況。

定時(shí)任務(wù)的執(zhí)行方式:

在 Spring Schedule 中,有幾種常見(jiàn)的定時(shí)任務(wù)執(zhí)行方式:

  • 固定延遲執(zhí)行(fixedDelay):在當(dāng)前任務(wù)完成后,等待一定的延遲時(shí)間后再次執(zhí)行任務(wù)。
  • 固定頻率執(zhí)行(fixedRate):以固定的頻率執(zhí)行任務(wù),不考慮任務(wù)的執(zhí)行時(shí)間。
  • Cron 表達(dá)式執(zhí)行:使用標(biāo)準(zhǔn)的 Cron 表達(dá)式配置任務(wù)的執(zhí)行時(shí)間規(guī)則,可以實(shí)現(xiàn)更靈活的定時(shí)任務(wù)調(diào)度。
  • fixedDelayTask()?方法使用?@Scheduled(fixedDelay = 5000)?注解,配置了任務(wù)的執(zhí)行間隔為每隔5秒執(zhí)行一次。當(dāng)任務(wù)執(zhí)行完成后,會(huì)等待5秒再次執(zhí)行。

  • fixedRateTask()?方法使用?@Scheduled(fixedRate = 3000)?注解,配置了任務(wù)的執(zhí)行頻率為每隔3秒執(zhí)行一次。不考慮任務(wù)的執(zhí)行時(shí)間,即使上一次任務(wù)還未完成,也會(huì)按照固定頻率執(zhí)行。

  • cronTask()?方法使用?@Scheduled(cron = "30 * * * * *")?注解,配置了任務(wù)的執(zhí)行時(shí)間規(guī)則為每分鐘的第30秒執(zhí)行一次。使用標(biāo)準(zhǔn)的 Cron 表達(dá)式可以實(shí)現(xiàn)更靈活的定時(shí)任務(wù)調(diào)度。

Cron表達(dá)式詳解

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java

?

  1. 定時(shí)任務(wù)的參數(shù)和返回值處理

定時(shí)任務(wù)方法可以接受參數(shù),并且可以有返回值。下面是對(duì)定時(shí)任務(wù)參數(shù)和返回值的處理方式的講解:

  1. 傳遞參數(shù)給定時(shí)任務(wù)方法:

定時(shí)任務(wù)方法可以接受參數(shù),您可以在方法的參數(shù)列表中聲明所需的參數(shù)。例如,如果您希望定時(shí)任務(wù)方法接受一個(gè)字符串參數(shù),可以按如下方式定義方法:

@Scheduled(fixedDelay = 5000)
public void myTask(String parameter) {
    // 使用接收到的參數(shù)執(zhí)行任務(wù)邏輯
}

當(dāng)定時(shí)任務(wù)被觸發(fā)時(shí),Spring Schedule 將自動(dòng)將參數(shù)傳遞給定時(shí)任務(wù)方法。您可以根據(jù)需要在方法內(nèi)部使用這些參數(shù)。

  1. 處理定時(shí)任務(wù)方法的返回值:

定時(shí)任務(wù)方法可以有返回值,但是返回值通常被忽略,因?yàn)槎〞r(shí)任務(wù)的執(zhí)行是異步的,沒(méi)有實(shí)際的調(diào)用方來(lái)處理返回值。因此,通常情況下,定時(shí)任務(wù)方法的返回值應(yīng)該為?void。

定時(shí)任務(wù)的錯(cuò)誤處理與異常處理:

在定時(shí)任務(wù)的執(zhí)行過(guò)程中,可能會(huì)出現(xiàn)錯(cuò)誤或異常。下面是對(duì)定時(shí)任務(wù)錯(cuò)誤處理和異常處理的講解:

  1. 處理定時(shí)任務(wù)方法中的異常:

如果定時(shí)任務(wù)方法中拋出了異常,Spring Schedule 將捕獲這些異常并記錄日志。默認(rèn)情況下,異常不會(huì)向上層傳播,也不會(huì)打斷定時(shí)任務(wù)的執(zhí)行。因此,您可以在定時(shí)任務(wù)方法中處理異常,例如進(jìn)行異常日志記錄或錯(cuò)誤處理。

@Scheduled(fixedDelay = 5000)
public void myTask() {
    try {
        // 執(zhí)行任務(wù)邏輯
    } catch (Exception e) {
        // 處理異常,例如記錄日志或進(jìn)行錯(cuò)誤處理
    }
}
  1. 定時(shí)任務(wù)的錯(cuò)誤處理策略:

如果您希望在定時(shí)任務(wù)方法拋出異常時(shí)中斷任務(wù)的執(zhí)行,并采取特定的錯(cuò)誤處理策略,可以通過(guò)配置?@EnableScheduling?注解的?exceptionHandler?屬性來(lái)實(shí)現(xiàn)。

@Configuration
@EnableScheduling(exceptionHandler = "myExceptionHandler")
public class MySchedulingConfig {
    
    @Bean
    public TaskScheduler taskScheduler() {
        ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
        scheduler.setPoolSize(10);
        return scheduler;
    }
    
    public void myExceptionHandler(Throwable error) {
        // 錯(cuò)誤處理邏輯,例如記錄日志或發(fā)送通知
    }
}

在上述示例中,我們創(chuàng)建了一個(gè)名為?MySchedulingConfig?的配置類,并在其中配置了一個(gè)?TaskScheduler?bean。通過(guò)在?@EnableScheduling?注解上指定?exceptionHandler?屬性,將錯(cuò)誤處理邏輯與定時(shí)任務(wù)調(diào)度器關(guān)聯(lián)起來(lái)。

配置多個(gè)定時(shí)任務(wù):

如果您需要配置多個(gè)定時(shí)任務(wù),可以在同一個(gè)類中定義多個(gè)定時(shí)任務(wù)方法,或者創(chuàng)建多個(gè)帶有定時(shí)任務(wù)注解的 Spring Bean。

@Component
public class MyTasks {
    
    @Scheduled(fixedDelay = 5000)
    public void task1() {
        // 執(zhí)行任務(wù)1的邏輯
    }
    
    @Scheduled(cron = "0 0 12 * * ?")
    public void task2() {
        // 執(zhí)行任務(wù)2的邏輯
    }
}

并發(fā)執(zhí)行多個(gè)定時(shí)任務(wù):

默認(rèn)情況下,Spring Schedule 使用單個(gè)線程執(zhí)行所有的定時(shí)任務(wù)。如果您需要并發(fā)執(zhí)行多個(gè)定時(shí)任務(wù),可以配置一個(gè)具有適當(dāng)線程池大小的任務(wù)調(diào)度器。

@Configuration
@EnableScheduling
public class MySchedulingConfig {
    
    @Bean
    public TaskScheduler taskScheduler() {
        ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
        scheduler.setPoolSize(10); // 設(shè)置線程池大小為10
        return scheduler;
    }
}

控制定時(shí)任務(wù)的執(zhí)行順序:

Spring Schedule 默認(rèn)情況下不提供顯式的控制定時(shí)任務(wù)執(zhí)行順序的方式。定時(shí)任務(wù)的執(zhí)行順序取決于任務(wù)調(diào)度器的實(shí)現(xiàn)和底層線程池的行為。

如果您需要在定時(shí)任務(wù)之間確保特定的執(zhí)行順序,可以考慮使用互斥或其他同步機(jī)制來(lái)實(shí)現(xiàn)。例如,您可以使用?synchronized?關(guān)鍵字或?Lock?接口來(lái)控制任務(wù)的互斥執(zhí)行。

@Component
public class MyTasks {
    
    private final Object lock1 = new Object();
    private final Object lock2 = new Object();
    
    @Scheduled(fixedDelay = 5000)
    public void task1() {
        synchronized (lock1) {
            // 執(zhí)行任務(wù)1的邏輯
        }
    }
    
    @Scheduled(fixedDelay = 5000)
    public void task2() {
        synchronized (lock2) {
            // 執(zhí)行任務(wù)2的邏輯
        }
    }
}

實(shí)戰(zhàn)案例:定時(shí)發(fā)送郵箱

首先引入依賴

dependency>
    groupId>org.springframework.bootgroupId>
    artifactId>spring-boot-starter-mailartifactId>
dependency>

去QQ郵箱

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java

開(kāi)啟這個(gè)服務(wù)

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java

自己收一下驗(yàn)證碼 確認(rèn) 就OK了

配置你的的基本配置

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java

編寫(xiě)郵箱發(fā)送方法

@Component
@ConfigurationProperties(prefix = "email.config")
public class EmailUtil {
    @Resource
    private StringRedisTemplate stringRedisTemplate;

    /**
     * 驗(yàn)證碼長(zhǎng)度
     */
    private int codeLen=6;

    /**
     * 發(fā)送郵箱驗(yàn)證碼的qq號(hào)
     */
    private String qq;

    /**
     * 發(fā)送郵件的郵箱
     */
    private String toSendEmail;

    /**
     * 發(fā)件人
     */
    private String sender;

    /**
     * 開(kāi)啟IMAP/SMTP服務(wù)獲取的授權(quán)碼
     */
    private String authPwd;

    /**
     * 郵件的主題
     */
    private String title;

    /**
     * 郵件的內(nèi)容
     */
    private String content;
    @Scheduled(cron = "0 34 21 * * ?")
    public void SendEmail(String email){
        String authCode=RandomUtil.randomNumbers(6);
        stringRedisTemplate.opsForValue().set(LOGIN_CODE_KEY+email,authCode,10, TimeUnit.MINUTES);  //將驗(yàn)證碼存入緩存,10分鐘失效
        try {
            sendAuthCodeEmail(email,authCode);
        } catch (Exception e) {
            e.printStackTrace();
            return Result.fail("發(fā)送失敗");
        }
        return Result.ok();
    }

    /**
     * 發(fā)送郵箱驗(yàn)證碼
     * @param email
     * @param authCode
     */
    public String sendAuthCodeEmail(String email, String authCode) {
        try {
            SimpleEmail mail = new SimpleEmail();
            mail.setHostName("smtp.qq.com");//發(fā)送郵件的服務(wù)器
            mail.setAuthentication(qq, authPwd);//第一個(gè)參數(shù)是發(fā)送郵箱驗(yàn)證碼的qq號(hào),第二個(gè)參數(shù)是開(kāi)啟IMAP/SMTP服務(wù)獲取的授權(quán)碼
            mail.setFrom(toSendEmail, sender);  //第一個(gè)參數(shù)是發(fā)送郵件的郵箱,第二個(gè)參數(shù)是發(fā)件人
            mail.setSSLOnConnect(true); //使用安全鏈接
            mail.addTo(email);//接收的郵箱
            mail.setSubject(title);//設(shè)置郵件的主題
            mail.setMsg(content + authCode);//設(shè)置郵件的內(nèi)容
            mail.send();//發(fā)送
        } catch (EmailException e) {
            e.printStackTrace();
        }
        return ;
    }

最終效果?

Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能,《Spring 狂野之旅:底層原理高級(jí)進(jìn)階》 ??,spring boot,自動(dòng)化,Java文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-839913.html

到了這里,關(guān)于Spring Schedule:Spring boot整合Spring Schedule實(shí)戰(zhàn)講解定時(shí)發(fā)送郵件的功能的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • spring boot 集成郵件發(fā)送功能

    spring boot 集成郵件發(fā)送功能

    一、首先到QQ郵箱申請(qǐng)開(kāi)啟POP3、SMTP協(xié)議 二、安裝依賴 三、配置文件 四、如果需要發(fā)送模板的郵件,則在/templates/目錄下建立email.html文件 五、如果需要異常打印信息的話新建自定義異常類BusinessException 六、如果需要發(fā)送附件的話,則新建網(wǎng)絡(luò)文件轉(zhuǎn)流類 七、測(cè)試方法

    2024年01月21日
    瀏覽(22)
  • Spring Boot 整合郵件服務(wù)

    首先參考了 Spring Boot整合郵件配置,這篇文章寫(xiě)的很好,按照上面的操作一步步走下去就行了。 版本配置 然后因?yàn)榉磸?fù)配置版本很麻煩,所以參考了 如何統(tǒng)一引入 Spring Boot 版本?。 FreeMarker 在配置 FreeMarker 時(shí),發(fā)現(xiàn)找不到 FreeMarkerConfigurer 類,參考了 springboot整合Freemark模板

    2024年02月02日
    瀏覽(27)
  • Spring Boot郵件發(fā)送教程:步步為營(yíng),輕松實(shí)現(xiàn)圖片附件郵件!

    Spring Boot郵件發(fā)送教程:步步為營(yíng),輕松實(shí)現(xiàn)圖片附件郵件!

    ? 通過(guò)Spring Boot構(gòu)建一個(gè)功能強(qiáng)大的郵件發(fā)送應(yīng)用程序,重點(diǎn)是實(shí)現(xiàn)發(fā)送包含圖片附件的郵件。我將逐步介紹添加必要的依賴、創(chuàng)建郵件服務(wù)類和控制器的步驟,并提供了具體的示例源代碼。跟隨這個(gè)簡(jiǎn)單而清晰的教程,您將能夠輕松地集成郵件發(fā)送功能到您的Spring Boot應(yīng)用中

    2024年02月04日
    瀏覽(23)
  • springboot 發(fā)送郵件,以及郵件工具類 并且解決spring-boot-starter-mail 發(fā)送郵件附件亂碼或者文件錯(cuò)亂

    1、設(shè)置系統(tǒng)值 System.setProperty(“mail.mime.splitlongparameters”, “false”); 2、 在創(chuàng)建對(duì)象的時(shí)候定義編碼格式(utf-8): MimeMessageHelper helper = new MimeMessageHelper(mes, true, “utf-8”); 3、 其次,在添加附件的時(shí)候,附件名是需要定義編碼的 helper.addAttachment(MimeUtility.encodeWord(附件名,“utf-8”

    2024年02月15日
    瀏覽(33)
  • Spring Boot中發(fā)送郵件時(shí),如何讓發(fā)件人顯示別名

    Spring Boot中發(fā)送郵件時(shí),如何讓發(fā)件人顯示別名

    之前,我們通過(guò)一系列文章,介紹了如何在Spring Boot中發(fā)送郵件: 發(fā)送郵件 添加附件 引用靜態(tài)資源 郵件模版 已經(jīng)包含了大部分的應(yīng)用場(chǎng)景。但最近DD在做YouTube中文配音的時(shí)候,碰到一個(gè)問(wèn)題: 如上圖所示,收件人在客戶端收到的時(shí)候,顯示的名稱是郵箱的前綴,而不是我

    2024年02月08日
    瀏覽(22)
  • MQTT協(xié)議-EMQX技術(shù)文檔-spring-boot整合使用--發(fā)送接收-消費(fèi)

    MQTT協(xié)議-EMQX技術(shù)文檔-spring-boot整合使用--發(fā)送接收-消費(fèi)

    MQTT(Message Queuing Telemetry Transport)是一種基于發(fā)布/訂閱模式的通信協(xié)議,它與MQ(Message Queue,消息隊(duì)列)有一定的關(guān)聯(lián),但二者并不完全相同。 MQTT是一種輕量級(jí)的通信協(xié)議,專門為在物聯(lián)網(wǎng)(IoT)設(shè)備之間的消息傳遞而設(shè)計(jì)。它運(yùn)行在TCP協(xié)議之上,以“發(fā)布-訂閱”模式進(jìn)行

    2024年02月12日
    瀏覽(21)
  • 【論壇java項(xiàng)目】第二章 Spring Boot實(shí)踐,開(kāi)發(fā)社區(qū)登錄模塊:發(fā)送郵件、開(kāi)發(fā)注冊(cè)功能、會(huì)話管理、生成驗(yàn)證碼、開(kāi)發(fā)登錄、退出功能、

    【論壇java項(xiàng)目】第二章 Spring Boot實(shí)踐,開(kāi)發(fā)社區(qū)登錄模塊:發(fā)送郵件、開(kāi)發(fā)注冊(cè)功能、會(huì)話管理、生成驗(yàn)證碼、開(kāi)發(fā)登錄、退出功能、

    ??如果對(duì)你有幫助的話?? ??為博主點(diǎn)個(gè)贊吧 ?? ??點(diǎn)贊是對(duì)博主最大的鼓勵(lì)?? ??愛(ài)心發(fā)射~?? bofryuzursekbiab——密碼 訪問(wèn)郵箱域名 郵箱端口 賬號(hào) 密碼 協(xié)議 詳細(xì)配置 JavaMailSender 是 Spring Email 的核心組件,負(fù)責(zé)發(fā)送郵件 MimeMessage 用于封裝郵件的相關(guān)信息 MimeMessageHelper 用

    2024年02月06日
    瀏覽(33)
  • Spring Boot 整合 MongoDB 實(shí)戰(zhàn)

    MongoDB是一種NoSQL數(shù)據(jù)庫(kù),而Spring Boot是一個(gè)用于快速構(gòu)建Java應(yīng)用程序的開(kāi)發(fā)框架。本文將介紹如何使用Spring Boot整合MongoDB,實(shí)現(xiàn)數(shù)據(jù)的持久化和操作。通過(guò)本文的學(xué)習(xí),讀者將了解到Spring Boot和MongoDB的基本概念和用途,并理解為什么選擇使用它們進(jìn)行整合。 在開(kāi)始整合之前,

    2024年02月14日
    瀏覽(16)
  • Spring Boot進(jìn)階(96):輕松上手:實(shí)戰(zhàn)Spring Boot整合Docker

    Spring Boot進(jìn)階(96):輕松上手:實(shí)戰(zhàn)Spring Boot整合Docker

    ??Docker 是一個(gè)開(kāi)源的應(yīng)用程序容器化工具,它可以將應(yīng)用程序和依賴組件打包到一個(gè)容器中,實(shí)現(xiàn)應(yīng)用程序的快速部署和運(yùn)行。Spring Boot 是一個(gè)快速開(kāi)發(fā)應(yīng)用程序的框架,使用 Spring Boot 可以快速構(gòu)建各種各樣的應(yīng)用程序。本文將介紹如何使用 Spring Boot 整合 Docker,實(shí)現(xiàn)應(yīng)用

    2024年02月07日
    瀏覽(26)
  • Spring Boot進(jìn)階(98):【實(shí)戰(zhàn)經(jīng)驗(yàn)】Spring Boot如何輕松整合Jenkins?

    Spring Boot進(jìn)階(98):【實(shí)戰(zhàn)經(jīng)驗(yàn)】Spring Boot如何輕松整合Jenkins?

    ??Jenkins是一款流行的開(kāi)源持續(xù)集成工具,通過(guò)Jenkins可以對(duì)項(xiàng)目進(jìn)行持續(xù)集成、自動(dòng)化部署等操作,提高開(kāi)發(fā)效率和代碼質(zhì)量。Spring Boot作為一款輕量級(jí)的開(kāi)發(fā)框架,具有快速構(gòu)建應(yīng)用、簡(jiǎn)化配置等眾多優(yōu)點(diǎn),與Jenkins的結(jié)合可以進(jìn)一步提高開(kāi)發(fā)效率和項(xiàng)目質(zhì)量。 ??那么,

    2024年02月06日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包