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

Java代碼實(shí)現(xiàn)發(fā)送QQ和網(wǎng)易電子郵件

 更新時(shí)間:2026年02月09日 08:31:04   作者:何中應(yīng)  
這篇文章主要為大家詳細(xì)介紹了如何通過Java代碼實(shí)現(xiàn)發(fā)送QQ和網(wǎng)易電子郵件功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

實(shí)現(xiàn)代碼

Step1:引入依賴

創(chuàng)建一個(gè)Maven項(xiàng)目,引入下面兩個(gè)依賴;

        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.8.27</version>
        </dependency>

        <dependency>
            <groupId>com.sun.mail</groupId>
            <artifactId>javax.mail</artifactId>
            <version>1.6.2</version>
        </dependency>

Step2:編碼

首先,寫一個(gè)工具類,該工具類有兩個(gè)方法,一個(gè)用來(lái)獲取郵件對(duì)象,一個(gè)用來(lái)發(fā)送郵件;

import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.mail.MailAccount;
import cn.hutool.extra.mail.MailUtil;

/**
 * 郵件發(fā)送工具類
 */
public final class EmailSenderUtil {

    private EmailSenderUtil() {
    }

    /**
     * 獲取郵箱客戶端
     *
     * @param smtpHost      smtp服務(wù)器地址
     * @param smtpPort      smtp服務(wù)器端口
     * @param emailUsername 郵箱用戶名
     * @param emailPassword 郵箱授權(quán)碼
     * @return
     */
    public static MailAccount getMailClient(String smtpHost, int smtpPort, String emailUsername, String emailPassword) {
        MailAccount account = new MailAccount();
        account.setHost(smtpHost);
        account.setPort(smtpPort);
        account.setAuth(true);
        account.setFrom(emailUsername);
        account.setUser(emailUsername);
        account.setPass(emailPassword);
        return account;
    }

    /**
     * 發(fā)送郵件
     *
     * @param account 郵箱客戶端
     * @param to      接收人郵箱地址
     * @param subject 郵件主題
     * @param content 郵件內(nèi)容
     * @param isHtml  是否是html格式
     */
    public static void sendEmail(MailAccount account, String to, String subject, String content, boolean isHtml) {
        if (StrUtil.isBlank(to)) {
            throw new IllegalArgumentException("收件人郵箱地址不能為空");
        }
        if (StrUtil.isBlank(subject)) {
            throw new IllegalArgumentException("郵件主題不能為空");
        }
        if (StrUtil.isBlank(content)) {
            throw new IllegalArgumentException("郵件內(nèi)容不能為空");
        }
        try {
            MailUtil.send(account, to, subject, content, isHtml);
            System.out.println("郵件發(fā)送成功");
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("郵件發(fā)送失敗");
        }
    }
}

Step3:獲取授權(quán)碼

發(fā)送人的郵箱賬戶需要開通SMTP服務(wù),允許通過客戶端發(fā)送郵件,這里介紹QQ郵箱、網(wǎng)易郵箱開通SMTP服務(wù)和獲取授權(quán)碼的步驟。

(QQ郵箱,SMTP_HOST是:smtp.qq.com,PORT用:465或587

(網(wǎng)易郵箱,SMTP_HOST是:smtp.163.com,PORT用:25

獲取授權(quán)碼的方式都差不多,用綁定的手機(jī)給郵件官方發(fā)短信,然后獲取授權(quán)碼

Step4:測(cè)試

寫一個(gè)main方法,測(cè)試發(fā)送郵件

import cn.hutool.extra.mail.MailAccount;

public class EmailSentTest {
    public static void main(String[] args) {
        // 郵件接收人,多個(gè)接收人使用逗號(hào)或者分號(hào)隔開
        String to = "";
        // 郵件主題
        String subject = "測(cè)試郵件";
        // 郵件內(nèi)容
        String content = "這是一封測(cè)試郵件";

        // 獲取郵箱客戶端
        MailAccount account = EmailSendUtil.getMailClient("smtp.qq.com", 587,
                "發(fā)送方qq賬號(hào)", "發(fā)送方授權(quán)碼");

        // 發(fā)送郵件
        EmailSendUtil.sendEmail(account, to, subject, content, false);
    }
}

發(fā)送成功

總結(jié)

本文介紹了如何用Hutool工具包封裝的MailUtil發(fā)送郵件,及QQ郵箱、網(wǎng)易郵箱如何開通SMTP服務(wù)和獲取授權(quán)碼。

到此這篇關(guān)于Java代碼實(shí)現(xiàn)發(fā)送QQ和網(wǎng)易電子郵件的文章就介紹到這了,更多相關(guān)Java發(fā)送郵件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java根據(jù)網(wǎng)絡(luò)地址保存圖片的方法

    java根據(jù)網(wǎng)絡(luò)地址保存圖片的方法

    這篇文章主要為大家詳細(xì)介紹了java根據(jù)網(wǎng)絡(luò)地址保存圖片的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • java.security.egd?作用詳解

    java.security.egd?作用詳解

    這篇文章主要為大家介紹了java.security.egd作用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • java實(shí)現(xiàn)數(shù)字轉(zhuǎn)換人民幣中文大寫工具

    java實(shí)現(xiàn)數(shù)字轉(zhuǎn)換人民幣中文大寫工具

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)數(shù)字轉(zhuǎn)換人民幣中文大寫工具,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • IntelliJ IDEA 常用設(shè)置(配置)吐血整理(首次安裝必需)

    IntelliJ IDEA 常用設(shè)置(配置)吐血整理(首次安裝必需)

    這篇文章主要介紹了IntelliJ IDEA 常用設(shè)置(配置)吐血整理(首次安裝必需),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Springboot 掃描mapper接口的2種操作

    Springboot 掃描mapper接口的2種操作

    這篇文章主要介紹了Springboot 掃描mapper接口的2種操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2021-01-01
  • 詳解RestTemplate?用法

    詳解RestTemplate?用法

    RestTemplate?是從?Spring3.0?開始支持的一個(gè)?HTTP?請(qǐng)求工具,也有的稱之為網(wǎng)絡(luò)框架,說(shuō)白了就是Java版本的一個(gè)postman,這篇文章主要介紹了詳解RestTemplate?用法,需要的朋友可以參考下
    2022-07-07
  • springBoot不同module之間互相依賴的實(shí)現(xiàn)

    springBoot不同module之間互相依賴的實(shí)現(xiàn)

    本文主要介紹了springBoot不同module之間互相依賴的實(shí)現(xiàn),不同模塊之間的依賴通常是通過Maven或Gradle來(lái)管理的,下面就來(lái)介紹一下如何實(shí)現(xiàn),感興趣的可以了解一下
    2024-08-08
  • MyBatisPlus?TypeHandler自定義字段類型轉(zhuǎn)換Handler

    MyBatisPlus?TypeHandler自定義字段類型轉(zhuǎn)換Handler

    這篇文章主要為大家介紹了MyBatisPlus?TypeHandler自定義字段類型轉(zhuǎn)換Handler示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • SpringBoot中熱點(diǎn)KEY緩存優(yōu)化的2種主流策略

    SpringBoot中熱點(diǎn)KEY緩存優(yōu)化的2種主流策略

    所謂熱點(diǎn)KEY,是指在緩存或數(shù)據(jù)庫(kù)中被頻繁訪問的少量鍵值,這些鍵往往承載了系統(tǒng)中大部分的訪問流量,本文將分享SpringBoot中三種主流的熱點(diǎn)KEY緩存優(yōu)化策略,大家可以根據(jù)需求進(jìn)行選擇
    2025-04-04
  • RabbitMQ核心函數(shù)的參數(shù)意義和使用場(chǎng)景分析

    RabbitMQ核心函數(shù)的參數(shù)意義和使用場(chǎng)景分析

    這篇文章主要介紹了RabbitMQ核心函數(shù)的參數(shù)意義和使用場(chǎng)景分析,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2025-06-06

最新評(píng)論

七台河市| 商河县| 文安县| 彰化市| 雅江县| 黄骅市| 武安市| 牙克石市| 胶州市| 双峰县| 博爱县| 杂多县| 武邑县| 朝阳区| 满城县| 尼勒克县| 太原市| 广河县| 阿图什市| 南投县| 丹寨县| 建德市| 米林县| 隆安县| 扶绥县| 鄂尔多斯市| 万宁市| 饶阳县| 南澳县| 碌曲县| 安丘市| 寻甸| 古田县| 乌鲁木齐市| 凤凰县| 昌平区| 七台河市| 西昌市| 探索| 和硕县| 建平县|