SpringBoot任務(wù)之詳解郵件任務(wù)
一、SpringBoot--任務(wù):郵件任務(wù)
1.1 添加依賴(lài)(增加郵件支持)

pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
1.2 獲取第三方授權(quán)碼
1.2.1 登錄QQ郵箱

1.2.2 點(diǎn)擊設(shè)置

1.2.3 切換到賬戶(hù)

1.2.4 開(kāi)啟服務(wù)

1.2.5 驗(yàn)證密保

1.2.6 成功獲取授權(quán)碼
這是為了不直接暴露QQ密碼設(shè)置的機(jī)制
ljoghujwhbkpbaff

1.2.7 保存更改(左下角)

1.3 配置郵件信息

application.properties
# qq郵箱 spring.mail.username=1585526224@qq.com # 剛剛生成的授權(quán)碼 spring.mail.password=ljoghujwhbkpbaff # qq郵箱的host spring.mail.host=smtp.qq.com #開(kāi)啟加密驗(yàn)證(qq郵箱) spring.mail.properties.mail.smtp.ssl.enable=true
1.4 簡(jiǎn)單郵件發(fā)送
直接調(diào)用SpringBoot的JavaMailSenderImpl類(lèi),使用SimpleMailMessage發(fā)送簡(jiǎn)單郵件

EmaildemoApplicationTests.java
package com.tian.emaildemo;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
@SpringBootTest
class EmaildemoApplicationTests {
@Autowired
JavaMailSenderImpl mailSender;
@Test
void contextLoads() {
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
// 郵件主題
simpleMailMessage.setSubject("你好");
// 郵件文本
simpleMailMessage.setText("Hello world");
// 接收方
simpleMailMessage.setTo("1585526224@qq.com");
// 發(fā)送方
simpleMailMessage.setFrom("1585526224@qq.com");
// 發(fā)送郵件
mailSender.send(simpleMailMessage);
}
}
運(yùn)行結(jié)果:

1.5 復(fù)雜郵件發(fā)送
調(diào)用mailSender.createMimeMessage()并使用MimeMessageHelper配置郵件內(nèi)容,發(fā)送即可,郵件內(nèi)容后設(shè)置為true可以解析html格式的內(nèi)容

EmaildemoApplicationTests.java
@Test
void contextLoads() throws MessagingException {
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
//復(fù)雜郵件
MimeMessage mimeMessage = mailSender.createMimeMessage();
//組裝
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);
mimeMessageHelper.setSubject("復(fù)雜郵件");
// 發(fā)送文本: html文本
mimeMessageHelper.setText("<p style='color: orange;'>\n" +
" ??驼勫?,煙濤微茫信難求;<br>\n" +
"\n" +
" 越人語(yǔ)天姥,云霞明滅或可睹。<br>\n" +
"\n" +
" 天姥連天向天橫,勢(shì)拔五岳掩赤城。<br>\n" +
"\n" +
" 天臺(tái)四萬(wàn)八千丈,對(duì)此欲倒東南傾。<br>\n" +
"\n" +
" (四萬(wàn) 一作:一萬(wàn))我欲因之夢(mèng)吳越,一夜飛度鏡湖月。<br>\n" +
"\n" +
" (度 通:渡)湖月照我影,送我至剡溪。<br>\n" +
"\n" +
" 謝公宿處今尚在,淥水蕩漾清猿啼。<br>\n" +
" <br>\n" +
" 腳著謝公屐,身登青云梯。<br>\n" +
"\n" +
" 半壁見(jiàn)海日,空中聞天雞。<br>\n" +
"\n" +
" 千巖萬(wàn)轉(zhuǎn)路不定,迷花倚石忽已暝。<br>\n" +
"\n" +
" 熊咆龍吟殷巖泉,栗深林兮驚層巔。<br>\n" +
"\n" +
" 云青青兮欲雨,水澹澹兮生煙。<br>\n" +
"\n" +
" 列缺霹靂,丘巒崩摧。<br>\n" +
" <br>\n" +
" 洞天石扉,訇然中開(kāi)。<br>\n" +
"\n" +
" 青冥浩蕩不見(jiàn)底,日月照耀金銀臺(tái)。<br>\n" +
"\n" +
" 霓為衣兮風(fēng)為馬,云之君兮紛紛而來(lái)下。<br>\n" +
"\n" +
" 虎鼓瑟兮鸞回車(chē),仙之人兮列如麻。<br>\n" +
"\n" +
" 忽魂悸以魄動(dòng),恍驚起而長(zhǎng)嗟。<br>\n" +
" <br>\n" +
" 惟覺(jué)時(shí)之枕席,失向來(lái)之煙霞。<br>\n" +
"\n" +
" 世間行樂(lè)亦如此,古來(lái)萬(wàn)事東流水。<br>\n" +
"\n" +
" 別君去兮何時(shí)還?<br>\n" +
"\n" +
" 且放白鹿青崖間。<br>\n" +
"\n" +
" 須行即騎訪(fǎng)名山。<br>\n" +
"\n" +
" 安能摧眉折腰事權(quán)貴,使我不得開(kāi)心顏!<br>\n" +
" </p>", true);//true,開(kāi)啟html解析
// 發(fā)送圖片
mimeMessageHelper.addAttachment("重慶理工大學(xué)夜景.jpg", new File("D:\\圖片\\schoolNight.jpg"));
mimeMessageHelper.setTo("1585526224@qq.com");
mimeMessageHelper.setFrom("1585526224@qq.com");
mailSender.send(mimeMessage);
}
運(yùn)行結(jié)果:

我不知道為什么:我寫(xiě)的CSS樣式在電腦上面不可預(yù)見(jiàn),但是在我的手機(jī)QQ郵箱確是可以看見(jiàn)的。歡迎知道的大神告訴我

1.6 可以把上面復(fù)雜發(fā)送郵件封裝成一個(gè)方法
public void SendMail(Boolean html, String title, String text, File file, String sendTo, String sendFrom) throws MessagingException {
//復(fù)雜郵件
MimeMessage mimeMessage = mailSender.createMimeMessage();
//組裝
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);
mimeMessageHelper.setSubject(title);
mimeMessageHelper.setText(text, html);//true,開(kāi)啟html解析
mimeMessageHelper.addAttachment("1.jpg", file);
mimeMessageHelper.setTo(sendTo);
mimeMessageHelper.setFrom(sendFrom);
mailSender.send(mimeMessage);
}
到此這篇關(guān)于SpringBoot任務(wù)之詳解郵件任務(wù)的文章就介紹到這了,更多相關(guān)SpringBoot郵件任務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用JavaWeb webSocket實(shí)現(xiàn)簡(jiǎn)易的點(diǎn)對(duì)點(diǎn)聊天功能實(shí)例代碼
這篇文章主要介紹了使用JavaWeb webSocket實(shí)現(xiàn)簡(jiǎn)易的點(diǎn)對(duì)點(diǎn)聊天功能實(shí)例代碼的相關(guān)資料,內(nèi)容介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧2016-05-05
Java中ResultSetMetaData 元數(shù)據(jù)的具體使用
本文主要介紹了Java中ResultSetMetaData 元數(shù)據(jù)的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
詳解Spring如何更簡(jiǎn)單的讀取和存儲(chǔ)對(duì)象
這篇文章主要為大家詳細(xì)介紹了Spring中如何更簡(jiǎn)單的實(shí)現(xiàn)讀取和存儲(chǔ)對(duì)象,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-07-07
Java class文件格式之常量池_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了Java class文件格式之常量池的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
從千千靜聽(tīng)歌詞服務(wù)器獲取lrc歌詞示例分享
這篇文章主要介紹了使用PHP從千千靜聽(tīng)歌詞服務(wù)器獲取lrc歌詞的方法,大家參考使用吧2014-01-01
java集合Collection實(shí)現(xiàn)類(lèi)解析ArrayList?LinkedList及Vector
這篇文章主要為大家介紹了java集合Collection實(shí)現(xiàn)類(lèi)解析ArrayList?LinkedList及Vector,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-03-03

