Spring Boot如何開啟并使用郵件服務(wù)
這里的郵件服務(wù)可以是自己搭的郵箱服務(wù)器,也可以是第三方的郵箱。
本人使用的是網(wǎng)易的163郵箱。
操作步驟如下:
登陸網(wǎng)易郵箱163在設(shè)置中打開并勾選POP3/SMTP/IMAP服務(wù)然后會(huì)得到一個(gè)授權(quán)碼,這個(gè)郵箱和授權(quán)碼將用作登陸認(rèn)證。

添加maven依賴
這里使用spring 官方給我們提供的郵箱操作庫。
坐標(biāo)如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
添加郵箱服務(wù)器配置
spring.mail.host=smtp.163.com(服務(wù)器地址)
spring.mail.username=你的賬戶
spring.mail.password=授權(quán)碼
spring.mail.properties.from=你的郵箱
編寫發(fā)送郵件業(yè)務(wù)
郵件VO
@Data
public class MailVo {
private String id;
private String from;
private String to;
private String subject;
private String text;
private Date sentDate;
private String cc;
private String bcc;
private boolean status;
private String error;
@JsonIgnore
private MultipartFile[] multipartFiles;
}
發(fā)送郵件業(yè)務(wù)
@Override
public void sendMimeMail(MailVo mailVo) {
try {
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(javaMailSender.createMimeMessage(), true);
mailVo.setFrom(javaMailSender.getJavaMailProperties().getProperty("from"));
mimeMessageHelper.setFrom(mailVo.getFrom());
mimeMessageHelper.setTo(mailVo.getTo().split(","));
mimeMessageHelper.setSubject(mailVo.getSubject());
mimeMessageHelper.setText(mailVo.getText());
if (!StringUtils.isEmpty(mailVo.getCc())) {
mimeMessageHelper.setCc(mailVo.getCc().split(","));
}
if (!StringUtils.isEmpty(mailVo.getBcc())) {
mimeMessageHelper.setBcc(mailVo.getBcc().split(","));
}
if (!StringUtils.isEmpty(mailVo.getSentDate())){
mailVo.setSentDate(new Date());
mimeMessageHelper.setSentDate(mailVo.getSentDate());
}
// 如果有附件
if (mailVo.getMultipartFiles() != null) {
for (MultipartFile file : mailVo.getMultipartFiles()) {
mimeMessageHelper.addAttachment(file.getOriginalFilename(),file);
}
}
// 發(fā)送
javaMailSender.send(mimeMessageHelper.getMimeMessage());
mailVo.setStatus(true);
logger.info("發(fā)送郵件成功:{}->{}", mailVo.getFrom(), mailVo.getTo());
} catch (MessagingException e) {
e.printStackTrace();
}
}
ps:最后調(diào)用服務(wù)發(fā)送郵件,這里就不闡述了。
最后附上一張收到的郵件截圖:

祝大家好運(yùn)。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- SpringBoot整合JavaMail通過阿里云企業(yè)郵箱發(fā)送郵件的實(shí)現(xiàn)
- Spring發(fā)送郵件如何內(nèi)嵌圖片增加附件
- SpringBoot基礎(chǔ)教程之集成郵件服務(wù)
- springboot實(shí)現(xiàn)發(fā)送郵件(QQ郵箱為例)
- 基于SpringBoot實(shí)現(xiàn)定時(shí)發(fā)送郵件過程解析
- Spring Boot Admin郵件警報(bào)整合過程解析
- SpringBoot發(fā)送郵件功能 驗(yàn)證碼5分鐘過期
- Springboot實(shí)現(xiàn)郵件發(fā)送功能
- SpringBoot實(shí)現(xiàn)發(fā)送郵件功能
- 如何用Spring發(fā)送電子郵件
相關(guān)文章
Springboot獲取文件內(nèi)容如何將MultipartFile轉(zhuǎn)File
本文給大家介紹Springboot獲取文件內(nèi)容,將MultipartFile轉(zhuǎn)File方法,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-01-01
Spring Boot中使用Spring-Retry重試框架的實(shí)現(xiàn)
本文主要介紹了Spring Boot中使用Spring-Retry重試框架的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04
Java實(shí)現(xiàn)FIFO任務(wù)調(diào)度隊(duì)列策略
在工作中,很多高并發(fā)的場景中,我們會(huì)用到隊(duì)列來實(shí)現(xiàn)大量的任務(wù)請(qǐng)求。當(dāng)任務(wù)需要某些特殊資源的時(shí)候,我們還需要合理的分配資源,讓隊(duì)列中的任務(wù)高效且有序完成任務(wù)。本文將為大家介紹通過java實(shí)現(xiàn)FIFO任務(wù)調(diào)度,需要的可以參考一下2021-12-12
Java設(shè)計(jì)模式編程中簡單工廠與抽象工廠模式的使用實(shí)例
這篇文章主要介紹了Java設(shè)計(jì)模式編程中簡單工廠與抽象工廠模式的使用實(shí)例,簡單工廠與抽象工廠都可以歸類于設(shè)計(jì)模式中的創(chuàng)建型模式,需要的朋友可以參考下2016-04-04
Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(28)
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧,希望可以幫到你2021-07-07

