一、spring-boot-starter-mail发送邮件(发送邮箱需要开启服务)
1.添加依赖
<!-- 邮件-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
2.application.yml中配置
mail:
test-connection: true
host: kkk.com
port: 25
username: 2222222.com
password: 22222
default-encoding: utf-8
protocol: smtp
emailFrom: 2222222.com
3.自定义配置类
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "spring.mail")
public class EmailConfig {
private String emailFrom;
public String getEmailFrom() {
return emailFrom;
}
public void setEmailFrom(String emailFrom) {
this.emailFrom = emailFrom;
}
}
3.service代码
package com.pcr.user.service;
import javafx.util.Pair;
import java.io.File;
import java.util.List;
/**
* @author zyn
* @date now
*/
public interface EmailService {
/**
* 发送简单邮件
* @param to 收件人地址
* @param subject 邮件标题
* @param content 邮件内容
*/
public void sendSimpleMail(String[] to, String subject, String content);
/**
* 发送简单邮件
* @param to 收件人地址
* @param subject 邮件标题
* @param content 邮件内容
* @param attachments<文件名附件> 附件列表
*/
public void sendAttachmentsMail(String[] to, String subject, String content, List<Pair<String, File>> attachments);
/**
* 发送html格式邮件
* @param subject 主题
* @param content 内容
*/
public void sendHtmlMail(String to , String subject, String content);
// /**
// * 发送模板邮件
// * @param to 收件人地址
// * @param subject 邮件标题
// * @param content<key内容> 邮件内容
// * @param attachments<文件名附件> 附件列表
// */
// public void sendTemplateMail(String[] to, String subject, Map<String, Object> content, List<Pair<String, File>> attachments);
}
package com.pcr.user.service.impl;
import com.pcr.user.config.EmailConfig;
import com.pcr.user.service.EmailService;
import javafx.util.Pair;
import org.springframework.beans.factory.anno