弹簧引导实战之发送邮件示例代码

  

  

邮件服务在互联网早期就已经出现,如今已成为人们互联网生活中必不可少的一项服务。那么邮件服务是怎么工作的呢?如下给出邮件发送与接收的典型过程:
  

  

1,发件人使用SMTP协议传输邮件到邮件服务器;
  

  

2,邮件服务器一根据邮件中指定的接收者,投送邮件至相应的邮件服务器B;
  

  

3,收件人使用POP3协议从邮件服务器B接收邮件。
  

  

SMTP(简单邮件传输协议)是电子邮件(电子邮件)传输的互联网标准,定义在RFC5321,默认使用端口25;
  

  

POP3(邮局协议版本3)主要用于支持使用客户端远程管理在服务器上的电子邮件。定义在RFC 1939,为流行协议的第三版(最新版)。
  

  

这两个协议均属于TCP/IP协议族的应用层协议,运行在TCP层之上。
  

  

我们日常收发邮件使用的客户端,网络邮件的背后都在运行着这两个协议,完成收发邮件的过程。而现在我们需要使用SMTP协议来把发送给用户的邮件传输到邮件服务器。
  

  

从客户端传输邮件到服务器需要双方的配合,而规则就定义在SMTP协议中。我们现在需要做的是找一个SMTP服务器,再实现一个SMTP客户端,然后让客户端发送邮件到服务器。

  

  126年

本文使用邮箱测试,在以下界面中开启smtp服务器,设置授权码,在后面代码中会使用到

  

春天引导实战之发送邮件示例代码

  

<强>

  

1)修改pom.xml,添加依赖库

        & lt; dependency>   & lt; groupId> org.springframework.boot   & lt; artifactId> spring-boot-starter-mail   & lt;/dependency>之前      

2)修改application.properties,添加邮箱配置

        spring.mail.host=smtp.126.com   spring.mail.username=* * * * @126.com   spring.mail。密码=密码#上面获取设置的授权码   spring.mail.default-encoding utf - 8=      

3)新增MailController
  

        包com.xiaofangtech.sunt.controller;      进口javax.mail.internet.MimeMessage;      进口org.springframework.beans.factory.annotation.Autowired;   进口org.springframework.mail.javamail.JavaMailSender;   进口org.springframework.mail.javamail.MimeMessageHelper;   进口org.springframework.web.bind.annotation.RequestMapping;   进口org.springframework.web.bind.annotation.RestController;      进口com.xiaofangtech.sunt.utils.ResultMsg;   进口com.xiaofangtech.sunt.utils.ResultStatusCode;      @RestController   @RequestMapping(“邮件”)   公开课MailController {   @ autowired   JavaMailSender mailSender;      @RequestMapping (“sendemail”)   公共对象sendEmail ()   {   试一试   {   最后MimeMessage MimeMessage=this.mailSender.createMimeMessage ();   最后MimeMessageHelper消息=new MimeMessageHelper (mimeMessage);   message.setFrom (“* * * * @126.com”);   message.setTo (“* * * * @example.com”);   message.setSubject(“测试邮件主题”);   message.setText(“测试邮件内容”);   this.mailSender.send (mimeMessage);      ResultMsg ResultMsg=new ResultMsg (ResultStatusCode.OK.getErrcode (),   ResultStatusCode.OK.getErrmsg(),零);   返回resultMsg;   }   捕获(异常交货)   {   ResultMsg ResultMsg=new ResultMsg (ResultStatusCode.SYSTEM_ERR.getErrcode (),   ResultStatusCode.SYSTEM_ERR.getErrmsg(),零);   返回resultMsg;   }   }   }   之前      

4)运行测试
  

  

浏览器中输入

  

http://localhost: 8080/邮件/sendemail

  

查看邮箱可以收到刚发送的邮件

  

春天引导实战之发送邮件示例代码

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

弹簧引导实战之发送邮件示例代码