Spring Boot实现邮件发送功能
时间:03月28日

本文实例为大家分享了Spring Boot邮件发送功能的具体代码,供大家参考,具体内容如下

1、引入依赖

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

2、参数配置

在application.properties中配置邮件相关的参数

spring.thymeleaf.cache=false

spring.mail.host=smtp.qq.com
spring.mail.username=***@qq.com
spring.mail.password=ymwrdffauajebgde //此处的密码时qq邮箱的授权码
spring.mail.properties.mail.smtp.auth=true 
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.stattls.required=true

3、邮件Service代码

@Service
public class MailService {

  @Value("${spring.mail.username}")
  private String from;
  
  @Autowired
  private JavaMailSender sender;
  
  /*发送邮件的方法*/
  public void sendSimple(String to, String title, String content){
    SimpleMailMessage message = new SimpleMailMessage();
    message.setFrom(from); //发送者
    message.setTo(to); //接受者
    message.setSubject(title); //发送标题
    message.setText(content); //发送内容
    sender.send(message);
    
    System.out.println("邮件发送成功");
    
  }
}

4、编写页面代码

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" 
   xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3">
<head>
<meta charset="UTF-8" />
<title>Insert title here</title>
</head>
<body>
  <h1 th:inlines="text">邮件发送</h1>
  <form action="sendMail" method="post">
    <p>选择文件: <input type="text" name="title"/></p>
    <p><input type="submit" value="提交"/></p>
  </form>
</body>
</html>

5、邮件请求处理

@Controller
public class MailController {

  @Autowired
  private MailService mailService;
  
  private String to="***@qq.com";
  
  @RequestMapping("mail")
  public String mail(){
    return "/mail";
  }
  
  @RequestMapping("sendMail")
  @ResponseBody
  public String sendMail(@RequestParam("title")String title){
    System.out.println("-----title: " + title);
    mailService.sendSimple(to, title, title);
    return "success";
  }
}

6、测试

7、qq邮箱授权码

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

最新动态
大家感兴趣的内容
关于我们 - 广告合作 - 联系我们 - 免责声明 - 网站地图 - 投诉建议 - 在线投稿
严禁网站镜像,否则追究法律责任 CopyRight © 2015-2018 信喏网络 All Rights Reserved.
地址:上海市经济技术开发区地盛西路1号 数码庄园A2座
电话:18758071355 微信:596644346 邮箱:596644346@qq.com
浙ICP备15017827号-1