Springboot项目发送QQ邮件

    xiaoxiao2022-11-07  16

    1.pom文件中导入

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

    2.application.properties中加入

    (如果是yml格式,转换一下) #下面这个不用改动 spring.mail.host=smtp.qq.com #下面这个改成发件人QQ邮箱地址(需要和下面授权码邮箱保持一致) spring.mail.username=********@qq.com #下面这个是QQ邮箱授权码(获取授权码往下看) spring.mail.password=***** #以下三项不用改动 spring.mail.properties.mail.smtp.auth=true spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.starttls.required=true

    提示: QQ授权码需前往QQ邮箱中获取,步骤如下: 1.前往QQ邮箱

    2.进入设置界面,点击账户

    3.进入账户页面,往下滑鼠标,找到(POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务) 点击 “POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?)” 后面的状态改为开启,会让你发送短信。按照它的提示做,之后你会收到一个授权码。保存好!!! 前台代码省略…

    3.去后台写一个发邮件的方法

    package com.xx.xxc.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; @Controller public class MailController { @Autowired private JavaMailSender javaMailSender; //这一步是获取application.properties中设置的发件人邮箱地址 @Value("${spring.mail.username}") private String username; //发送邮件(接收三个前台传过来的参数:addressee 收件人地址、theme 邮件主题、text 邮件正文) @RequestMapping("sendMail") public void sendMail(String addressee,String theme,String text){ //发邮件 SimpleMailMessage message = new SimpleMailMessage(); //发件人邮件地址(上面获取到的,也可以直接填写,string类型) message.setFrom(username); //收件人邮件地址 message.setTo(addressee); //邮件主题 message.setSubject(theme); //邮件正文 message.setText(text); javaMailSender.send(message); } }

    启动项目,大功告成

    最新回复(0)