自行創建一個SpringBoot項目
導入SpringBoot所需要的郵箱驗證碼的包
<!--郵件發送--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId><version>2.6.1</version></dependency>
定義郵箱驗證碼所需要的配置
找到application.properties然后將下面的配置輸入進去
接下來用戶的賬號是需要填充你自己的qq郵箱號
password填充的是你的郵箱配置生成的授權碼,具體授權碼應該如何生成,請看下面的詳細配置? ?--------------------------------郵箱授權碼配置下方有詳細教程,請仔細觀看
#發送郵件配置相關
# 配置郵件服務器的地址 smtp.qq.com
spring.mail.host=smtp.qq.com
# 配置郵件服務器的端口(465或587)
spring.mail.port=465
# 配置用戶的賬號
spring.mail.username=XXX
# 配置用戶的密碼
spring.mail.password=XXX
# 配置默認編碼
spring.mail.default-encoding=UTF-8
郵箱授權碼配置
- 登錄郵箱
- 點擊獲取授權碼,進入之后,接下來的步驟你應該一看就懂了
接下來開始寫代碼
創建AppConfig文件,目的是為了找到發送方的qq郵箱,也就是之前在配置文件里面配置的
package com.easypan.entity.config;import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;@Component("appConfig")
public class AppConfig {@Value("${spring.mail.username}")private String sendUsername;public String getSendUsername() {return sendUsername;}
}
//導入bean@Resourceprivate JavaMailSender javaMailSender;@Resourceprivate AppConfig appConfig;
/*** 發送郵箱驗證碼的功能* @param toEmail* @param code*/private void sendEmailCode(String toEmail,String code){try {MimeMessage message = javaMailSender.createMimeMessage();MimeMessageHelper helper = new MimeMessageHelper(message,true);helper.setFrom(appConfig.getSendUsername());helper.setTo(toEmail);helper.setSubject("你的項目發送的主標題");helper.setText("<div style=\"background-color: #f0f0f0; padding: 20px;\">\n" +" <h1 style=\"color: #800000;\">你的項目名稱</h1>\n" +" <p style=\"color: #800000;\">尊敬的用戶,您的短信驗證碼為:<span style=\"color: black; font-weight: bold;\">"+code+"</span></p>\n" +" <p style=\"color: #800000;\">該驗證碼用于注冊賬號或者修改密碼,有效期為5分鐘。</p>\n" +" <p style=\"color: #800000;\">請勿泄露和轉發此驗證碼,以保障您的賬號安全。</p>\n" +" <p style=\"color: #800000;\">如非您本人操作,請忽略此郵件。</p>\n" +"</div></p>");helper.setSentDate(new Date());javaMailSender.send(message);} catch (MessagingException e) {logger.error("郵件發送失敗");throw new BusinessException("郵件發送失敗");}}