一 qq邮箱设置

1登录邮箱打开设置

2点击账号

3开启 POP3/SMTP服务

4保存密钥(这个一定要保存后面在java里面要调用)


二. spring boot代码设置

1.maven导入jar包

 <!--qq邮箱--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>

2.设置yml设置发送邮箱人,设置

  spring: mail:# 配置 SMTP 服务器地址host: smtp.qq.com# 发送者邮箱username: ---@qq.com# 配置密码,注意不是真正的密码,而是刚刚申请到的授权码password: ---- #刚刚生成的密钥# 端口号465或587port: 587# 默认的邮件编码为UTF-8default-encoding: UTF-8# 配置SSL 加密工厂properties:mail:smtp:socketFactoryClass: javax.net.ssl.SSLSocketFactory#表示开启 DEBUG 模式,这样,邮件发送过程的日志会在控制台打印出来,方便排查错误debug: true

3业务代码编写

import org.springframework.beans.factory.annotation.Value;
import org.springframework.mail.MailException;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import javax.annotation.Resource;
import java.util.Random;@RestController
@RequestMapping("email")
public class EmailController {@Resourceprivate JavaMailSender javaMailSender;//读取yml文件中username的值并赋值给form@Value("${spring.mail.username}")private String from;@RequestMapping("sendEmail")public String sendSimpleMail(@RequestParam(value = "emailReceiver") String emailReceiver) {// 构建一个邮件对象SimpleMailMessage message = new SimpleMailMessage();// 设置邮件发送者message.setFrom(from);// 设置邮件接收者message.setTo(emailReceiver);// 设置邮件的主题message.setSubject("登录验证码");// 设置邮件的正文Random random = new Random();StringBuilder code = new StringBuilder();for (int i = 0; i < 6; i++) {int r = random.nextInt(10);code.append(r);}String text = "您的验证码为:" + code + ",请勿泄露给他人。";message.setText(text);// 发送邮件try {javaMailSender.send(message);return "发送成功";} catch (MailException e) {e.printStackTrace();}return "发送失败";}
}

三.测试接口

邮箱那边可以


spring boot 发送验证码就可以发送了

spring boot 使用javaMailSender 发送qq邮箱验证码相关推荐

  1. SpringBoot实现发送QQ邮箱验证码

    SpringBoot实现发送QQ邮箱验证码 打开qq邮箱官网 点击设置 找到开启服务:POP3/SMTP 然后复制给的密授权码(记住) 导入maven依赖坐标 <!--qq邮箱--> &l ...

  2. C# WinForm 使用SMTP协议发送QQ邮箱验证码

    文章目录 前言 功能实现步骤 一.获取QQ邮箱授权码 二.功能界面 三.创建发送邮箱验证码的类 四.在From1中调用类中的函数,实现功能 前言   在程序设计中,发送验证码是常见的一个功能,用户在注 ...

  3. Spring Boot 整合163或者qq邮箱发送验证码

    前记 最近做的项目中注册功能要用到验证码,本来想用阿里云的短信服务,但是有点小贵,就另辟捷径,选择了用邮箱来发送验证码.记录一下整合过程,也希望能帮助一些有需要的人. 正文 1.Spring Boot ...

  4. java发送QQ邮箱验证码实现登录注册、邮箱验证码防刷校验

    文章目录 一:前台功能实现 1.1 页面编写 1.2 发送验证码--sendEmailCode 1.2.1 远程调用发送接口 1.2.1 接口防刷校验--60s内只能发送一次 二:获取QQ邮箱授权码 ...

  5. java实现发送qq邮箱验证码

    1.登录qq邮箱,开启POP3/SMTP服务 路径:qq邮箱--->设置---->选择账户----> 打开 按照要求发送短信后得到授权码 得到授权码后要记得点击确定,页面拉到最下方点 ...

  6. 登录系统-发送QQ邮箱验证码(2)

    在网上找了很久的QT基于smtp的发送邮件,最后找到了一个别人写的,可以用.下面是链接: https://download.csdn.net/download/weixin_39566101/1063 ...

  7. mysql查询使用qq邮箱注册_Spring Boot实现qq邮箱验证码注册和登录验证功能

    1.登录注册思路 这是一个使用spring boot做的一个qq邮箱注册和登录的项目. 没写前端页面,使用postman测试.有截图详细. 1.1.思路 注册:通过输入的邮箱发送验证码,检验前端传来的 ...

  8. php使用qq发邮件怎么发,php 发送QQ邮箱邮件

    这是我的源码比较简陋 https://www.lanzous.com/i2l7h8f 感谢 https://www.cnblogs.com/woider/p/6980456.html 下载phpmai ...

  9. Spring Boot 配置邮件发送

    本文目录: 1.前言 2.Spring Boot配置步骤 Ⅰ.添加依赖 Ⅱ.修改配置文件 Ⅲ.POP3/SMTP服务 Ⅳ.封装邮件工具类 1.定义接口IMailService.interface: 2 ...

最新文章

  1. redis value最大值_Redis 的 maxmemory 和 dbnum 默认值都是多少?对于最大值会有限制吗?...
  2. mysql创建索引要加index吗_MySql创建索引,添加索引
  3. java 类加载器 解密_JAVA类加载器总结整理
  4. c语言 增删查 案例,C语言实现单链表的增删查改
  5. python random randint_python中random.randint(1,100)随机数中包不包括1和100
  6. 吉利汽车发布澄清公告:并未与百度公司合作生产智能电动车
  7. python3.9新特性_Python3.9又更新了:dict内置新功能
  8. Spring 解耦反射创建对象
  9. 亲和数(220/284)
  10. linux rewind函数,C语言rewind()函数:将文件指针重新指向文件开头
  11. 函数节流-避免重复提交
  12. 统计android代码行数据,Android Studio代码行数统计插件Statistics
  13. 完整的企业机房设计(上)
  14. linux命令查看系统日期,Linux系统查看当前时间的命令
  15. SQLite数据库锁机制研究
  16. 苹果计算机格式化磁盘,如何格式化Mac电脑硬盘_给Mac电脑格式化硬盘的方法
  17. Matlab 网络通信(TCP IP)
  18. STM32 UART/USART初始化时钟使能
  19. (自学java的第三天)JPI文档、变量、数据类型
  20. java 类的方法设计_设计问题:Java类与单方法OK?

热门文章

  1. Doc2Vec模型的介绍与gensim中Doc2Vec的使用
  2. 【蓝桥杯】 次数差:x 星球有 26 只球队,分别用 a ~ z 的 26 个字母代表。他们总是不停地比赛。 在某一赛段,哪个球队获胜了,就记录下代表它的字母,这样就形成一个长长的串。 国王...
  3. 2022全新Java学习路线图动力节点(五)框架之路
  4. 车险杀手锏——高速大数据在车险定价中的应用
  5. Vue 添加组件和跳转
  6. 墙面有几种装修方法_墙面装修有几种方式
  7. wkhtmltopdf 中文参数详解
  8. 如何快速高效的刷Leetcode
  9. MATLAB | 那些你不得不知道的MATLAB小技巧(一)
  10. 网络安全学习第4篇-使用特征码和MD5对勒索病毒进行专杀,并对加密文件进行解密