史上最简单易懂的JAVA发送邮件与报错处理
小编不说废话了直接开整
一、导入依赖
首先导入对应的依赖
代码:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
二、配置邮件属性
这也是简单又容易犯错的地方
代码:
spring.mail.default-encoding=UTF-8
#标明使用哪种邮箱
spring.mail.host=smtp.qq.com
#发送者的邮箱账号
spring.mail.username=*********
#发送者的邮箱密码(QQ是授权码)
spring.mail.password=*********
#端口(默认是25端口)
spring.mail.port=465
#协议
spring.mail.protocol=smtp
#启用465等端口使用如下代码
spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
#本次服务的端口号
server.port=8081
三、写测试用例
没什么好讲的了直接抄过去
代码:
@RestController
public class MailController {
@Autowired
JavaMailSender jms;
@GetMapping("/send")
public String send(){
//建立邮件消息
SimpleMailMessage mainMessage = new SimpleMailMessage();
//发送者
mainMessage.setFrom("**********@qq.com");
//接收者
mainMessage.setTo("**********@qq.com");
//发送的标题
mainMessage.setSubject("嗨喽");
//发送的内容
mainMessage.setText("hello world");
jms.send(mainMessage);
return "发送成功!";
}
}
结果:
四、几种遇到的情况与解决办法
1.535错误
授权码或账号不对造成的
2.加载超时
使用465端口需要配置SSL上面代码已给出或者可能你的邮箱没有开通smtp这项服务