天天看点

史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

史上最简单易懂的JAVA发送邮件与报错处理

目录

  • 史上最简单易懂的JAVA发送邮件与报错处理
    • 一、导入依赖
    • 二、配置邮件属性
    • 三、写测试用例
    • 四、几种遇到的情况与解决办法
          • 1.535错误
          • 2.加载超时
小编不说废话了直接开整

一、导入依赖

首先导入对应的依赖

史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

代码:

<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-mail</artifactId>
		</dependency>
           

二、配置邮件属性

这也是简单又容易犯错的地方

史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

代码:

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
           

三、写测试用例

没什么好讲的了直接抄过去

史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

代码:

@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 "发送成功!";
    }
}
           

结果:

史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

四、几种遇到的情况与解决办法

1.535错误
史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

授权码或账号不对造成的

2.加载超时
史上最简单易懂的JAVA发送邮件与报错处理史上最简单易懂的JAVA发送邮件与报错处理

使用465端口需要配置SSL上面代码已给出或者可能你的邮箱没有开通smtp这项服务

这些就是JAVA发送邮件与报错处理的全部内容,小编遇到了这两种错误情况,欢迎大家在下方评论交流