最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javamail發(fā)送qq郵箱失敗的原因及解決

 更新時(shí)間:2024年04月30日 08:30:41   作者:Mr朱墨  
本文主要介紹了javamail發(fā)送qq郵箱失敗的原因及解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

javaMail報(bào)錯:Unsupported or unrecognized SSL message

c.n.m.service.impl.EmailServiceImpl      : 郵件發(fā)送異常, Mail server connection failed; nested exception is javax.mail.MessagingException: Exception reading response;
  nested exception is:
    javax.net.ssl.SSLException: Unsupported or unrecognized SSL message. Failed messages: javax.mail.MessagingException: Exception reading response;
  nested exception is:
    javax.net.ssl.SSLException: Unsupported or unrecognized SSL message

原因分析: ssl與tls端口

坑點(diǎn):官方文檔發(fā)送郵件服務(wù)器: smtp.qq.com,使用SSL,端口號465或587,其實(shí)是使用SSL用465,使用TLS使用587,不能混用,特別是JavaMail在設(shè)置Properties屬性的時(shí)候需要指定使用哪一種協(xié)議,不能用混,否則報(bào)錯QQ郵箱SMTP/IMAP服務(wù)

在這里插入圖片描述

比如說我配置的是郵箱服務(wù)器是 smtp.qq.com:587,但是JavaMail的Properties設(shè)置的是
javaMailProperties.put(“mail.smtp.starttls.enable”, “true”);則會報(bào)上述錯,因?yàn)閰f(xié)議不匹配,必須使用465端口

在這里插入圖片描述

總結(jié)

“mail.smtp.ssl.enable”和“mail.smtp.starttls.enable”是JavaMail郵件發(fā)送配置中的兩個不同參數(shù),它們的區(qū)別主要在于使用的加密協(xié)議

mail.smtp.ssl.enable:這個參數(shù)用于啟用SSL(Secure Sockets Layer)加密協(xié)議。當(dāng)設(shè)置為true時(shí),郵件傳輸將通過一個SSL連接進(jìn)行,這通常意味著使用465端口。SSL協(xié)議在建立連接后立即加密數(shù)據(jù)流,適用于那些要求全加密通信的SMTP服務(wù)器。

mail.smtp.starttls.enable:這個參數(shù)用于啟用TLS(Transport Layer Security)加密協(xié)議。當(dāng)設(shè)置為true時(shí),郵件傳輸將通過一個開始時(shí)未加密的連接進(jìn)行,然后在傳輸過程中升級為TLS加密,這通常意味著使用587端口。TLS協(xié)議是在數(shù)據(jù)傳輸之前建立一個加密層,適用于那些提供明文連接然后升級到加密通信的SMTP服務(wù)器。

總的來說,mail.smtp.ssl.enable和mail.smtp.starttls.enable都是用于郵件加密的配置項(xiàng),但它們分別對應(yīng)不同的加密方式和端口。如果SMTP服務(wù)器支持SSL,則應(yīng)配置mail.smtp.ssl.enable;如果SMTP服務(wù)器支持TLS,則應(yīng)配置mail.smtp.starttls.enable。

 private JavaMailSenderImpl generateMailSender(EmailSendDto emailSendDto) {
        JavaMailSenderImpl currentMailSender = new JavaMailSenderImpl();
        currentMailSender.setHost(emailSendDto.getHost());
        currentMailSender.setPort(Integer.parseInt(emailSendDto.getPort()));
        currentMailSender.setUsername(emailSendDto.getUsername());
        currentMailSender.setPassword(emailSendDto.getPassword());
        currentMailSender.setDefaultEncoding("UTF-8");
        Properties javaMailProperties = new Properties();
        javaMailProperties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        javaMailProperties.put("mail.smtp.auth", "true");
        javaMailProperties.put("mail.smtp.ssl.enable", "true");        // 465端口
//        javaMailProperties.put("mail.smtp.starttls.enable", "true"); // 587端口
        javaMailProperties.put("mail.debug", "true");
        currentMailSender.setJavaMailProperties(javaMailProperties);
        return currentMailSender;
    }

到此這篇關(guān)于javamail發(fā)送qq郵箱失敗的原因及解決的文章就介紹到這了,更多相關(guān)javamail發(fā)送qq郵箱內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何構(gòu)建可重復(fù)讀取inputStream的request

    如何構(gòu)建可重復(fù)讀取inputStream的request

    這篇文章主要介紹了如何構(gòu)建可重復(fù)讀取inputStream的request,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 詳解Http協(xié)議以及post與get區(qū)別

    詳解Http協(xié)議以及post與get區(qū)別

    這篇文章主要介紹了詳解Http協(xié)議以及post與get區(qū)別,通過分別說明Http協(xié)議以及get與post各自的概念,再到兩者作比較有著詳細(xì)的說明,希望對你有所幫助
    2021-06-06
  • windows如何使用bat腳本后臺啟動/停止和重啟jar包服務(wù)

    windows如何使用bat腳本后臺啟動/停止和重啟jar包服務(wù)

    這篇文章主要介紹了windows使用bat腳本后臺啟動/停止和重啟jar包服務(wù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • IntelliJ安裝并使用Rust IDE插件

    IntelliJ安裝并使用Rust IDE插件

    這篇文章主要介紹了IntelliJ安裝并使用Rust IDE插件,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Java空集合使用場景與填坑記錄

    Java空集合使用場景與填坑記錄

    這篇文章主要給大家介紹了關(guān)于Java空集合使用場景與填坑的相關(guān)資料,并且給大家介紹了java判斷集合是否為空的方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08
  • SpringBoot集成Swagger2實(shí)現(xiàn)Restful(類型轉(zhuǎn)換錯誤解決辦法)

    SpringBoot集成Swagger2實(shí)現(xiàn)Restful(類型轉(zhuǎn)換錯誤解決辦法)

    這篇文章主要介紹了SpringBoot集成Swagger2實(shí)現(xiàn)Restful(類型轉(zhuǎn)換錯誤解決辦法),需要的朋友可以參考下
    2017-07-07
  • Java8中創(chuàng)建Stream流的幾種常見方式

    Java8中創(chuàng)建Stream流的幾種常見方式

    在Java 8中,??Stream?? API 是一種新的處理數(shù)據(jù)的方式,它允許以聲明式的方式來處理數(shù)據(jù)集合,本文將詳細(xì)介紹在Java 8中創(chuàng)建 ??Stream?? 流的幾種常見方式,大家可以根據(jù)需要進(jìn)行選擇
    2025-05-05
  • SpringBoot文件上傳與下載功能實(shí)現(xiàn)詳解

    SpringBoot文件上傳與下載功能實(shí)現(xiàn)詳解

    文件上傳與下載是Web應(yīng)用開發(fā)中常用的功能之一。接下來我們將討論如何在Spring?Boot的Web應(yīng)用開發(fā)中,如何實(shí)現(xiàn)文件的上傳與下載,感興趣的可以了解一下
    2022-10-10
  • SpringBoot項(xiàng)目jar發(fā)布后如何獲取jar包所在目錄路徑

    SpringBoot項(xiàng)目jar發(fā)布后如何獲取jar包所在目錄路徑

    這篇文章主要介紹了SpringBoot項(xiàng)目jar發(fā)布后如何獲取jar包所在目錄路徑,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 零基礎(chǔ)寫Java知乎爬蟲之進(jìn)階篇

    零基礎(chǔ)寫Java知乎爬蟲之進(jìn)階篇

    前面幾篇文章,我們都是簡單的實(shí)現(xiàn)了java爬蟲抓取內(nèi)容的問題,那么如果遇到復(fù)雜情況,我們還能繼續(xù)那么做嗎?答案當(dāng)然是否定的,之前的僅僅是入門篇,都是些基礎(chǔ)知識,給大家練手用的,本文我們就來點(diǎn)高大上的東西
    2014-11-11

最新評論

牟定县| 栾川县| 张家川| 射阳县| 莱西市| 台前县| 宜黄县| 连山| 民丰县| 类乌齐县| 临沭县| 大兴区| 临高县| 扎兰屯市| 改则县| 红河县| 满城县| 平和县| 隆子县| 东港市| 搜索| 白沙| 平凉市| 紫云| 万载县| 仙桃市| 廉江市| 水城县| 资阳市| 锦屏县| 周宁县| 岳西县| 乌海市| 资阳市| 新疆| 盐津县| 南宫市| 卓资县| 金平| 东阿县| 长春市|