1 创建Spring Boot项目
2 导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
<version>2.6.3</version>
</dependency>
3 配置application.yml
spring:
mail:
host: # 邮箱服务器 例:smtp.qq.com
username: ****@qq.com
password: ****
properties:
mail:
smtp:
auth: true
starttls:
enable: true
required: true
4 MailService.java
package com.zhangz1.maildemo.service;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
/**
* Created by zhang1 on 2022/2/13 17:02
*/
@Service
public class MailService {
@Resource
JavaMailSender mailSender;
private final Logger logger = LoggerFactory.getLogger(MailService.class);
public String send(String sender, String receiver, String title, String text) {
try {
//建立邮件消息
MimeMessage message = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);
//发送方
helper.setFrom(sender);
//接收方
helper.setTo(receiver);
//发送的标题
helper.setSubject(title);
//发送的内容
helper.setText(text);
mailSender.send(message);
} catch (MessagingException e) {
logger.error(e.getMessage());
}
return "发送成功";
}
}
5 MailController.java
package com.zhangz1.maildemo.controller;
import com.zhangz1.maildemo.service.MailService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.Random;
/**
* Created by zhangz1 on 2022/2/13 17:10
*/
@RestController
public class MailController {
@Resource
private MailService mailService;
@RequestMapping("/sendMail")
public String send() {
String checkCode = String.valueOf(new Random().nextInt(899999) + 100000);
String sender = "2659445660@qq.com"; //发送方邮箱
String receiver = "admin@zhangz1.top"; //接收方邮箱
String title = "验证码";
String text = "您的验证码为" + checkCode;
return mailService.send(sender, receiver, title, text);
}
}
6 测试
版权属于:张子
本文链接:https://www.znzzi.com/articles/216
所有原创文章采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。 您可以自由的转载和修改,但请务必注明文章来源并且不可用于商业目的。