通过邮箱验证码找回密码
pom依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
测试类
package com.cbb.util;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;
/**
*@date 2022年5月13日 09点02分
*@author 陈斌斌
*/
public class sendEmail {
public static void main(String[] args) throws AddressException,MessagingException {
// 创建Properties 类用于记录邮箱的一些属性
Properties props = new Properties();
// 表示SMTP发送邮件,必须进行身份验证
props.put("mail.smtp.auth", "true");
//此处填写SMTP服务器
props.put("mail.smtp.host", "smtp.qq.com");
//端口号,QQ邮箱端口587
props.put("mail.smtp.port", "587");
// 此处填写,写信人的账号
props.put("mail.user", "XXXXXX@qq.com");
// 此处填写16位STMP口令
//登录QQ邮箱 - 设置- 账户 - POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
//-POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?) 此项目开启
//会生成一串字符串 复制过来
props.put("mail.password", "");
// 构建授权信息,用于进行SMTP进行身份验证
Authenticator authenticator = new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
// 用户名、密码
String userName = props.getProperty("mail.user");
String password = props.getProperty("mail.password");
return new PasswordAuthentication(userName, password);
}
};
// 使用环境属性和授权信息,创建邮件会话
Session mailSession = Session.getInstance(props, authenticator);
// 创建邮件消息
MimeMessage message = new MimeMessage(mailSession);
// 设置发件人
InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
message.setFrom(form);
// 设置收件人的邮箱
InternetAddress to = new InternetAddress("XXXXXX@qq.com");
message.setRecipient(RecipientType.TO, to);
//生成随机数
int number = (int) (Math.random()*1000000);
// 设置邮件标题
message.setSubject("找回密码提醒");
// 设置邮件的内容体
message.setContent("您的验证码为:"+number+"。尊敬的客户,以上验证码一次生效,天天水果生鲜系统不会以任何方式向你索取该验证码,请忽泄露或转发他人[陈斌斌]", "text/html;charset=UTF-8");
// 最后当然就是发送邮件啦
Transport.send(message);
}
}
通过邮箱验证码找回密码相关推荐
- php发邮箱验证码找回密码,织梦dede会员通过邮箱找回密码方法
首先打开文件: /member/resetpassword.php 这是织梦会员找回密码的核心文件! 在148行有这么一句: showmsg('对不起,临时密码错误', '-1'); 看来问题就在 ...
- php实现短信找回密码,thinkphp5怎么调用云片接口实现发送短信验证码找回密码功能...
thinkphp5怎么调用云片接口实现发送短信验证码找回密码功能 发布时间:2020-12-11 12:33:42 来源:亿速云 阅读:60 作者:小新 小编给大家分享一下thinkphp5怎么调用云 ...
- html5实现短信验证修改密码,thinkphp5如何调用云片接口实现发送短信验证码找回密码功能...
下面由thinkphp框架教程栏目给大家介绍thinkphp5如何调用云片接口实现发送短信验证码找回密码功能,希望对需要的朋友有所帮助! 思路: 1.用户输入手机号,请求获取短信验证码. 2.thin ...
- javaWeb实现使用邮箱邮件找回密码功能
JSP+Jmail+JavaBean 发邮件(转)2010-08-23 18:052007年04月14日 14:32/* * SendMail.java * * Created on 2007年3月3 ...
- 基于TP3.2的发送邮箱做找回密码
技术QQ交流群:294088839 //找回密码 public function reset(){ if(IS_POST){ $username=I( ...
- 使用qq邮箱作为找回密码发件邮箱。报错:参数或变量中有语法错误。 服务器响应为:mail from address must be same as authorization u
首先查看该帖:http://bbs.csdn.net/topics/390149680 然后QQ邮箱管理员 返回以下信息. 你好,我们发现你最近在第三方客户端尝试登录QQ邮箱失败. 失败原因:由于你已 ...
- ThinkPHP 3.2 用户注册邮箱验证帐号找回密码
一.前言 当然现在有的网站也有手机短信的方式找回密码,原理就是通过发送验证码来验明正身,和发送邮件验证一样,最终还是要通过重置密码来完成找回密码的流程. 本文将使用PHP+Mysql+jQuery来实 ...
- 网站常用邮箱找回密码流程插件页面
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- php通过邮箱找回密码,PHP邮件验证找回密码
内容转载自网络,如有侵权请留言. 话不多说直接上代码. 前台HTML+Jq操作: 输入您注册的电子邮箱,找回密码: $(function(){ $("#sub_btn").clic ...
最新文章
- SAP CRM和C4C数据同步的两种方式概述:SAP PI和HCI
- 甘特图看起来很生硬?教你使用智能颜色装饰你的甘特图!(二)
- 车仪表台上的装饰_一汽大众销量最差的车,旅行车蔚领为什么在国内没有市场?...
- 通过fork进程爆破canary
- Laravel-数据库队列
- 解决Ajax中IE浏览器缓存问题
- String、StringBuiler、StringBuffer的区别
- C/C++获取Windows系统CPU和内存及硬盘使用情况
- QProcess实现交互式命令
- undefined reference to错误的解决方法
- OpenGL入门(二)之渲染管线pipeline,VAO、VBO和EBO
- PCL .stl格式转成.pcd格式点云文件
- 转:让老板头疼的90后,管不得?
- 京东云PostgreSQL在GIS场景的应用分享
- 六、C++离散傅里叶逆变换
- java画太极加图片_新手初学java 尝试编程绘画太极图
- linux 怎样安装 nginx
- STM32中的程序在RAM还是FLASH里运行?
- 精妙绝伦!阿里资深架构师撰写这份:并发编程,可谓“独具匠心”
- 小尝试:基于指标体系的数据仓库搭建和数据可视化