admin管理员组文章数量:1559386
Spring Boot 发送邮件比较简单,已经傻瓜化了,用两分钟看完,三分钟搞定,五分钟做出此功能足矣。
如果五分钟还没做出来,那请检查一下自己的电脑是否有开发工具,电脑是否过于老旧,网络是否缓慢。
首先获取一下授权码吧:腾讯QQ个人邮箱授权码的获取方式:
在application-local.yml中配置文件中配置以下信息
#在.yml文件中配置一下信息
server:
port: 8080
servlet:
context-path: /mailsender
# 数据源相关配置
spring:
mail:
#host: smtp.exmail.qq # 腾讯企业邮箱
host: smtp.qq # 腾讯个人邮箱
protocol: smtp
port: 465
username: ******@qq #邮箱地址
password: xxxxxxxx #邮箱授权码
properties:
mail:
smtp:
auth: true
ssl:
enable: true
socketFactory:
class: com.sun.mail.util.MailSSLSocketFactory
fallback: false
在pom.xml中加入mail发送的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
@RestController
@RequestMapping("/mail")
public class MailController {
@Autowired
JavaMailSender jms;
@Autowired
MailConfig mailConfig;
@PostMapping(value = "/send")
public JsonResult<String> postMail(@RequestBody MailDto mailDto) {
try {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(mailConfig.getUserEmail());
message.setTo(mailDto.getTo()); //收件人邮箱地址
message.setSubject(mailDto.getSubject());
message.setText(mailDto.getText());
jms.send(message);
} catch (Exception e) {
throw new MessageException(e.getMessage());
}
return JsonResult.success("success");
}
}
完成以上步骤就可以发送报文进行测试了。可以使用Postman等工具向接口发送测试请求。如下:
POST :
http://localhost:8080/mailsender/mail/send
{
"to":"moumoumou@126",
"subject": "好久不见",
"text":"好久不见了,你还好么?顺便问一下,想我了么"
}
版权声明:本文标题:Spring Boot 使用腾讯QQ邮箱发送邮件 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1727422200a1113705.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论