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

一文詳解如何使用Java來(lái)發(fā)送qq郵箱郵件

 更新時(shí)間:2024年12月26日 10:28:47   作者:igxia  
這篇文章主要給大家介紹了關(guān)于如何使用Java來(lái)發(fā)送qq郵箱郵件的相關(guān)資料,文中降了準(zhǔn)備工作(開啟服務(wù)并生成授權(quán)碼)、接口調(diào)用(引入依賴和編寫接口代碼)、發(fā)送HTML格式郵件等內(nèi)容,需要的朋友可以參考下

1、準(zhǔn)備工作

(1)打開qq郵箱服務(wù)授權(quán)

首先進(jìn)入到qq郵箱主頁(yè),點(diǎn)擊左上方的設(shè)置按鈕

進(jìn)入設(shè)置頁(yè)面后,再點(diǎn)擊賬號(hào)

往下滑,然后可以看到 “POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù)”

然后點(diǎn)擊開啟服務(wù)(因?yàn)槲疫@里是已經(jīng)開啟了,默認(rèn)情況是沒有開啟的)

點(diǎn)擊開啟后會(huì)跳轉(zhuǎn)到另一個(gè)頁(yè)面,同樣找到“POP3/IMAP/SMTP/Exchange/CardDAV 服務(wù)”,然后點(diǎn)擊生成授權(quán)碼

即可生成一段字符串,

?。?!將該字符串復(fù)制保存下來(lái),不然的話,下次就只能再重新生成授權(quán)碼了

2、接口調(diào)用

(1)引入依賴

再pom.xml文件中引入下方依賴

<dependency>
  	<groupId>org.apache.commons</groupId>
     <artifactId>commons-email</artifactId>
     <version>1.5</version>
 </dependency>

(2)驗(yàn)證碼生成函數(shù)

這一步大家有其他方法也都可以,這里只是生成驗(yàn)證碼字符串

public String achieveCode() {  //由于數(shù)字 1 、 0 和字母 O 、l 有時(shí)分不清楚,所以,沒有數(shù)字 1 、 0
        String[] beforeShuffle= new String[] { "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F",
                "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a",
                "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
                "w", "x", "y", "z" };
        List list = Arrays.asList(beforeShuffle);//將數(shù)組轉(zhuǎn)換為集合
        Collections.shuffle(list);  //打亂集合順序
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < list.size(); i++) {
            sb.append(list.get(i)); //將集合轉(zhuǎn)化為字符串
        }
        return sb.toString().substring(3, 9);  //截取字符串第4到8
    }

3、接口代碼編寫

@Autowired
    private RedisService redisService;
    @GetMapping("/getotp/{email}")
    public AjaxResult getOtp(@PathVariable String email, HttpSession session) throws EmailException {
        String otpCode = this.achieveCode();
//        session.setAttribute(email, otpCode);

        redisService.setCacheObject("otpCode:" + email, otpCode, 2L, TimeUnit.MINUTES);
        HtmlEmail emails=new HtmlEmail();
        emails.setHostName("smtp.qq.com");
        emails.setCharset("utf-8");
        emails.setSmtpPort(465);
        emails.setSSLOnConnect(true);
        emails.addTo(email);//設(shè)置收件人
        emails.setFrom("11111@qq.com","lalala");
        emails.setAuthentication("11111@qq.com","gwbtpcktyxnubefc");
        emails.setSubject("驗(yàn)證碼來(lái)略,快快查收");//設(shè)置發(fā)送主題
        emails.setMsg(optCode);//設(shè)置發(fā)送內(nèi)容
        emails.send();//進(jìn)行發(fā)送
        return success(otpCode);
    }

(如果大家項(xiàng)目沒有引入Redis,也可以用session代替,因?yàn)槲疫@里是一整個(gè)業(yè)務(wù)流程,后續(xù)還需要對(duì)比驗(yàn)證碼,所以需要用到換成,大家測(cè)試的話也可以去掉)

再這一段語(yǔ)句里 emails.setAuthentication(“11111@qq.com”,“gwbtpcktyxnubefc”);
其中郵箱即為剛才生成授權(quán)碼的郵箱,后面一段字符串就是授權(quán)碼。

在編寫完上述代碼后,即可通過調(diào)用此按鈕來(lái)發(fā)送郵件。

4、HTML型郵件

通過上述代碼,只能發(fā)送一個(gè)簡(jiǎn)單的字符,但是qq郵箱也是支持html解析的,我們可以在其中設(shè)置html代碼,讓我們的郵件“精致”一點(diǎn),只需要更改emails.setMsg()中的參數(shù)即可

emails.setMsg("<!DOCTYPE html>\n" +
                "<html lang=\"en\">\n" +
                "<head>\n" +
                "    <meta charset=\"UTF-8\">\n" +
                "    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n" +
                "    <title>Email Template</title>\n" +
                "</head>\n" +
                "<body style=\"font-family: Arial, sans-serif; background-color: #f4f4f4; padding: 20px;\">\n" +
                "\n" +
                "    <div style=\"max-width: 600px; margin: 0 auto; background-color: #ffffff; padding: 20px; border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\">\n" +
                "\n" +
                "        <h1 style=\"color: #333333; text-align: center;\">我來(lái)組成頭部</h1>\n" +
                "\n" +
                "        <p style=\"color: #555555; text-align: center;\">我來(lái)組成標(biāo)題</p>\n" +
                "\n" +
                "        <p style=\"color: #555555; text-align: center;\">驗(yàn)證碼是" + otpCode + "</p>\n" +
                "\n" +
                "        <p style=\"color: #555555;\">lalalalala^(* ̄(oo) ̄)^,</p>\n" +
                "\n" +
                "        <p style=\"color: #555555;\">lalalalala</p>\n" +
                "\n" +
                "        <p style=\"color: #555555;\">哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈</p>\n" +
                "\n" +
                "        <p style=\"color: #555555;\">哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈</p>\n" +
                "\n" +
                "        <p style=\"color: #555555;\">哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈</p>\n" +
                "\n" +
                "        <p style=\"color: #888888; text-align: center; font-size: 12px; margin-top: 20px;\">? 2024 Example Company. All rights reserved.</p>\n" +
                "\n" +
                "    </div>\n" +
                "\n" +
                "</body>\n" +
                "</html>\n");//設(shè)置發(fā)送內(nèi)容

總結(jié)  

到此這篇關(guān)于使用Java來(lái)發(fā)送qq郵箱郵件的文章就介紹到這了,更多相關(guān)Java發(fā)送qq郵箱郵件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 關(guān)于SpringBoot Actuator漏洞補(bǔ)救方案

    關(guān)于SpringBoot Actuator漏洞補(bǔ)救方案

    SpringBoot Actuator模塊提供了健康檢查,審計(jì),指標(biāo)收集,HTTP 跟蹤等,是幫助我們監(jiān)控和管理SpringBoot應(yīng)用的模塊,本文將主要介紹SpringBoot Actuator漏洞的補(bǔ)救方案,需要的朋友可以參考下
    2023-06-06
  • Spring事務(wù)處理Transactional,鎖同步和并發(fā)線程

    Spring事務(wù)處理Transactional,鎖同步和并發(fā)線程

    本文詳細(xì)講解了Spring事務(wù)處理Transactional,鎖同步和并發(fā)線程。對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • JDK8 HashMap擴(kuò)容機(jī)制分析詳解

    JDK8 HashMap擴(kuò)容機(jī)制分析詳解

    這篇文章主要為大家介紹了JDK8 HashMap擴(kuò)容機(jī)制分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • Java的靜態(tài)類型檢查示例代碼詳解

    Java的靜態(tài)類型檢查示例代碼詳解

    本文將使用幾個(gè)代碼示例,深入講解Java中的類型檢查機(jī)制。一旦完全理解了本文的例子,就完全掌握了Java中的靜態(tài)類型檢查,感興趣的朋友一起看看吧
    2017-11-11
  • spring security國(guó)際化及UserCache的配置和使用

    spring security國(guó)際化及UserCache的配置和使用

    這篇文章主要介紹下國(guó)際化的配置及UserCache的配置及使用教程,感興趣的朋友參考下實(shí)現(xiàn)代碼吧
    2017-09-09
  • Java游戲服務(wù)器系列之Netty相關(guān)知識(shí)總結(jié)

    Java游戲服務(wù)器系列之Netty相關(guān)知識(shí)總結(jié)

    今天帶大家來(lái)學(xué)習(xí)Java游戲服務(wù)器的相關(guān)知識(shí),文中對(duì)Netty作了非常詳細(xì)的介紹,對(duì)正在學(xué)習(xí)java的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • springboot中的RestTemplate使用詳解

    springboot中的RestTemplate使用詳解

    這篇文章主要介紹了springboot中的RestTemplate使用詳解,RestTemplate繼承自InterceptingHttpAccessor并且實(shí)現(xiàn)了RestOperations接口,其中RestOperations接口定義了基本的RESTful操作,這些操作在RestTemplate中都得到了實(shí)現(xiàn),需要的朋友可以參考下
    2023-09-09
  • Spring?Cloud詳細(xì)講解zuul集成Eureka流程

    Spring?Cloud詳細(xì)講解zuul集成Eureka流程

    這篇文章主要介紹了Spring?Cloud?zuul集成Eureka,Eureka?Client中內(nèi)置一個(gè)負(fù)載均衡器,用來(lái)進(jìn)行基本的負(fù)載均衡,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • Spring Security 和Apache Shiro你需要具備哪些條件

    Spring Security 和Apache Shiro你需要具備哪些條件

    這篇文章主要介紹了Spring Security 和Apache Shiro你需要具備哪些條件,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Java調(diào)用linux shell腳本的方法

    Java調(diào)用linux shell腳本的方法

    這篇文章主要介紹了Java調(diào)用linux shell腳本的方法,需要的朋友可以參考下
    2015-02-02

最新評(píng)論

高阳县| 海原县| 泸水县| 锡林郭勒盟| 宣恩县| 遂平县| 大同县| 松溪县| 大荔县| 拉萨市| 沾化县| 丽水市| 灵璧县| 莱西市| 平果县| 中宁县| 安远县| 永济市| 航空| 吐鲁番市| 昌吉市| 嘉荫县| 涪陵区| 海口市| 治县。| 南召县| 方正县| 巴彦县| 高陵县| 西城区| 米泉市| 吉木乃县| 油尖旺区| 武安市| 许昌市| 秭归县| 灌南县| 义乌市| 台州市| 文安县| 安康市|