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

基于JavaMail實現(xiàn)簡單郵件發(fā)送

 更新時間:2022年08月10日 15:16:27   作者:風(fēng)喃海北  
這篇文章主要為大家詳細(xì)介紹了基于JavaMail實現(xiàn)簡單郵件發(fā)送,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了JavaMail實現(xiàn)簡單郵件發(fā)送的具體代碼,供大家參考,具體內(nèi)容如下

1.引入依賴

<dependency>
? ? <groupId>org.springframework.boot</groupId>
? ? <artifactId>spring-boot-starter-mail</artifactId>
? ? <version>2.5.5</version>
</dependency>

2.郵件發(fā)送工具類

package com.test;

import lombok.Builder;
import lombok.Data;

import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Date;
import java.util.Properties;

/**
?* 郵件工具
?* @author visy.wang
?* @date 2021/10/18 11:13
?*/
public class MailUtil {
? ? private static final String USER = "發(fā)件人郵箱地址";
? ? private static final String PASS = "發(fā)件人郵箱密碼";
? ? private static final String HOST = "smtp.xxx.com"; //郵件服務(wù)器地址
? ? private static final String PORT = "465"; //SSL連接端口:465,普通連接:25
? ? private static final Properties PROPERTIES = new Properties();

? ? //連接郵件服務(wù)器的參數(shù)配置
? ? static {
? ? ? ? //設(shè)置用戶的認(rèn)證方式
? ? ? ? PROPERTIES.setProperty("mail.smtp.auth", "true");
? ? ? ? //設(shè)置傳輸協(xié)議
? ? ? ? PROPERTIES.setProperty("mail.transport.protocol", "smtp");
? ? ? ? //設(shè)置發(fā)件人的SMTP服務(wù)器地址
? ? ? ? PROPERTIES.setProperty("mail.smtp.host", HOST);
? ? ? ? //使用SSL安全連接(如果不使用SSL,以下配置可省略, 默認(rèn)端口是25)
? ? ? ? PROPERTIES.setProperty("mail.smtp.port", PORT);
? ? ? ? PROPERTIES.setProperty("mail.smtp.socketFactory.port", PORT);
? ? ? ? PROPERTIES.setProperty("mail.smtp.socketFactory.fallback", "false");
? ? ? ? PROPERTIES.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
? ? }

? ? @Data
? ? @Builder
? ? public static class MyMessage{
? ? ? ? private String to;
? ? ? ? private String subject;
? ? ? ? private String content;
? ? }

? ? public static void send(MyMessage message) throws Exception{
? ? ? ? //2、創(chuàng)建定義整個應(yīng)用程序所需的環(huán)境信息的 Session 對象
? ? ? ? Session session = Session.getInstance(PROPERTIES);
? ? ? ? //設(shè)置調(diào)試信息在控制臺打印出來
? ? ? ? session.setDebug(true);
? ? ? ? //3、創(chuàng)建郵件的實例對象
? ? ? ? Message msg = getMessage(session, message);
? ? ? ? //4、根據(jù)session對象獲取郵件傳輸對象Transport
? ? ? ? Transport transport = session.getTransport();
? ? ? ? //設(shè)置發(fā)件人的賬戶名和密碼
? ? ? ? transport.connect(USER, PASS);
? ? ? ? //發(fā)送郵件,并發(fā)送到所有收件人地址,message.getAllRecipients() 獲取到的是在創(chuàng)建郵件對象時添加的所有收件人, 抄送人, 密送人
? ? ? ? transport.sendMessage(msg, msg.getAllRecipients());

? ? ? ? //如果只想發(fā)送給指定的人,可以如下寫法
? ? ? ? //transport.sendMessage(msg, new Address[]{new InternetAddress("xxx@qq.com")});

? ? ? ? //5、關(guān)閉郵件連接
? ? ? ? transport.close();
? ? }

? ? private static MimeMessage getMessage(Session session, MyMessage message) throws Exception{
? ? ? ? //創(chuàng)建一封郵件的實例對象
? ? ? ? MimeMessage msg = new MimeMessage(session);

? ? ? ? //設(shè)置發(fā)件人地址
? ? ? ? msg.setFrom(new InternetAddress(USER));

? ? ? ? /**
? ? ? ? ?* 設(shè)置收件人地址(可以增加多個收件人、抄送、密送),即下面這一行代碼書寫多行
? ? ? ? ?* MimeMessage.RecipientType.TO:發(fā)送
? ? ? ? ?* MimeMessage.RecipientType.CC:抄送
? ? ? ? ?* MimeMessage.RecipientType.BCC:密送
? ? ? ? ?*/
? ? ? ? msg.setRecipient(MimeMessage.RecipientType.TO, new InternetAddress(message.getTo()));

? ? ? ? //設(shè)置郵件主題
? ? ? ? msg.setSubject(message.getSubject(),"UTF-8");

? ? ? ? //設(shè)置郵件正文
? ? ? ? msg.setContent(message.getContent(), "text/html;charset=UTF-8");

? ? ? ? //設(shè)置郵件的發(fā)送時間,默認(rèn)立即發(fā)送
? ? ? ? msg.setSentDate(new Date());

? ? ? ? return msg;
? ? }
}

3.發(fā)送測試

public static void main(String[] args) throws Exception{
? ? MailUtil.send(
? ? ? ? ? MailUtil.MyMessage.builder()
? ? ? ? ? .to("收件人郵箱地址")
? ? ? ? ? .subject("郵件主題")
? ? ? ? ? .content("郵件內(nèi)容<b>支持HTML標(biāo)簽</b>")
? ? ? ? ? .build()
? ? );
}

4.注意點

要使用某個郵件服務(wù)器發(fā)送郵件,需要先在郵箱中開通對用的服務(wù):即開啟 SMTP服務(wù)。

本文并不是springboot的使用方式,springboot的方式更簡單,只需在application.yml中配置好,然后注入一個發(fā)送者即可。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot如何進(jìn)行參數(shù)校驗實例詳解

    SpringBoot如何進(jìn)行參數(shù)校驗實例詳解

    開發(fā)過程中,后臺的參數(shù)校驗是必不可少的,下面這篇文章主要給大家介紹了關(guān)于SpringBoot如何進(jìn)行參數(shù)校驗的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-01-01
  • Spring @Value 設(shè)置默認(rèn)值的實現(xiàn)

    Spring @Value 設(shè)置默認(rèn)值的實現(xiàn)

    這篇文章主要介紹了Spring @Value 設(shè)置默認(rèn)值的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Java泛型extends及super區(qū)別實例解析

    Java泛型extends及super區(qū)別實例解析

    這篇文章主要介紹了Java泛型extends及super區(qū)別實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • Springboot Redis?哨兵模式的實現(xiàn)示例

    Springboot Redis?哨兵模式的實現(xiàn)示例

    本文主要介紹了Springboot Redis?哨兵模式的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解java 客戶端鏈接不上redis解決方案

    詳解java 客戶端鏈接不上redis解決方案

    這篇文章主要介紹了詳解java 客戶端鏈接不上redis解決方案,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-01-01
  • 實例講述Java IO文件復(fù)制

    實例講述Java IO文件復(fù)制

    本篇文章通過實例給大家詳細(xì)講述Java IO文件復(fù)制的相關(guān)知識點,需要的讀者們學(xué)習(xí)下吧。
    2018-02-02
  • 全面探究 Java 內(nèi)部類

    全面探究 Java 內(nèi)部類

    說起內(nèi)部類這個詞,想必很多人都不陌生,但是又會覺得不熟悉。原因是平時編寫代碼時可能用到的場景不多,用得最多的是在有事件監(jiān)聽的情況下,并且即使用到也很少去總結(jié)內(nèi)部類的用法。今天我們就來一探究竟
    2021-09-09
  • Java壓縮解壓縮工具類

    Java壓縮解壓縮工具類

    這篇文章主要為大家詳細(xì)介紹了Java壓縮解壓縮工具類,如何壓縮單個文件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • java中SynchronizedList和Vector的區(qū)別詳解

    java中SynchronizedList和Vector的區(qū)別詳解

    這篇文章主要介紹了java中SynchronizedList和Vector的區(qū)別詳解,Vector是java.util包中的一個類。 SynchronizedList是java.util.Collections中的一個靜態(tài)內(nèi)部類。,需要的朋友可以參考下
    2019-06-06
  • springboot 通過代碼自動生成pid的方法

    springboot 通過代碼自動生成pid的方法

    這篇文章主要介紹了springboot 通過代碼自動生成pid的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07

最新評論

太原市| 上林县| 铜陵市| 亚东县| 安庆市| 会昌县| 西乌珠穆沁旗| 盐源县| 泰州市| 民乐县| 邵东县| 南丹县| 弥渡县| 札达县| 上饶县| 江西省| 富蕴县| 庆城县| 木兰县| 北辰区| 柞水县| 沙坪坝区| 青河县| 峨眉山市| 诸城市| 焉耆| 楚雄市| 德钦县| 思南县| 洪雅县| 宿迁市| 平武县| 大名县| 松潘县| 藁城市| 海安县| 兴山县| 阿城市| 文成县| 泌阳县| 浮梁县|