引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
yaml 配置
spring:
mail:
# 邮件服务器
host: smtp.qq.com
# 端口号
port: 465
# 账号
username: 853237017@qq.com
# 授权码
password: ifoadyaxyaiabcfd
# 默认字符编码
default-encoding: UTF-8
properties:
mail:
debug: true
smtp:
socketFactory:
class: javax.net.ssl.SSLSocketFactory
发邮件
/**
* @author outengfei
* @date 2023/5/23 13:54
*/
@Service
public class MailService {
// JavaMailSender 在Mail 自动配置类 MailSenderAutoConfiguration 中已经导入,这里直接注入使用即可
@Resource
JavaMailSender javaMailSender;
//方法5个参数分别表示:邮件发送者、收件人、抄送人、邮件主题以及邮件内容
public void sendSimpleMail(String from, String[] to, String[] cc, String subject, String content) {
// 简单邮件直接构建一个 SimpleMailMessage 对象进行配置并发送即可
// SimpleMailMessage simpMsg = new SimpleMailMessage();
// simpMsg.setFrom(from);
// simpMsg.setTo(to);
// simpMsg.setCc(cc);
// simpMsg.setSubject(subject);
// simpMsg.setText(content);
// javaMailSender.send(simpMsg);
try {
MimeMessage message = javaMailSender.createMimeMessage();
// 这里使用 MimeMessageHelper 简化了邮件配置
// 第二个参数true表示构造一个 multipart message 类型邮件
// multipart message类型邮件包含多个正文、附件以及内嵌资源,邮件表现形式更加丰富
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from);
helper.setTo(to);
//helper.setCc(cc);
helper.setSubject(subject);
helper.setText(content);
// 最后通过 addAttachment 方法添加附件
helper.addAttachment("aaaa", new File("D:\\test\\XDYX_0011_20230420\\01187703_0001.jpg"));
javaMailSender.send(message);
}catch (Exception e){
System.out.println(e.getMessage());
}
}
}
评论区