idea maven环境下 java实现发送邮件验证
1.开通smtp授权
QQ邮箱-设置-账户-开启
得到一个授权码
2.下载javax.email包
maven项目中
pom文件加入:
- <dependency>
- <groupId>com.sun.mail</groupId>
- <artifactId>javax.mail</artifactId>
- <version>1.5.5</version>
- </dependency>
3.方法:
- import java.util.Properties;
- import javax.mail.Address;
- import javax.mail.Message;
- import javax.mail.Session;
- import javax.mail.Transport;
- import javax.mail.internet.InternetAddress;
- //email 你要发给谁 //authcode 验证码
- public static void email(String email,Integer authcode)throws Exception {
- Properties properties = new Properties();
- properties.setProperty("mail.transport.protocol", "smtp");//发送邮件协议
- properties.setProperty("mail.smtp.auth", "true");//需要验证
- //properties.setProperty("mail.debug", "true");//设置debug模式 后台输出邮件发送的过程
- Session session = Session.getInstance(properties);
- session.setDebug(true);//debug模式
- //邮件信息
- Message messgae = new MimeMessage(session);
- messgae.setFrom(new InternetAddress("测试@sina.com"));//设置发送人
- messgae.setText("你的验证码为:"+authcode+"。请注意,验证码有效时间为2分钟!!!");//设置邮件内容
- messgae.setSubject("邮箱验证");//设置邮件主题
- //发送邮件
- Transport tran = session.getTransport();
- tran.connect("smtp.sina.com", 25, "邮箱账户", "邮箱授权码");//连接到新浪邮箱服务器
- // tran.connect("smtp.qq.com",587, "Michael8@qq.vip.com", "xxxx");//连接到QQ邮箱服务器
- tran.sendMessage(messgae, new Address[]{ new InternetAddress(email)});//设置邮件接收人
- tran.close();
- }
4.验证逻辑
点击发送时生成一串随机数字,存一份发一份,验证即可。
搞定。
idea maven环境下 java实现发送邮件验证的更多相关文章
- Eclipse+Maven环境下java.lang.OutOfMemoryError: PermGen space及其解决方法
转自 https://blog.csdn.net/qdgengwenfei/article/details/71455432 java.lang.OutOfMemoryError: PermGen ...
- Maven环境下搭建SSH框架
© 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Maven:3.3.9 Struts2:2.5.10 Spring:4.3.8.RELEASE Hibernate:5.1.7.Fina ...
- Maven环境下搭建SSH框架之Spring整合Hibernate
© 版权声明:本文为博主原创文章,转载请注明出处 1.搭建环境 Spring:4.3.8.RELEASE Hibernate:5.1.7.Final MySQL:5.7.17 注意:其他版本在某些特性 ...
- Maven环境下多模块项目构建
Maven环境下多模块项目构建 一.新建项目 1.建立我们的父模块par 2.建立我们的子模块dao层 3.建立我们的子模块service层 4.建立我们的子模块web层 5.全部配置完成后,怎么把我 ...
- Maven环境下Poi的使用
Poi的使用方法,网上还是挺多的,官网也有教程. 附一个比较全的: http://www.cnblogs.com/vTree/archive/2011/11/30/2268721.html 需要说明的 ...
- windows和linux环境下java调用C++代码-JNI技术
最近部门做安卓移动开发的需要调C++的代码,困难重重,最后任务交给了我,查找相关资料,没有一个教程能把不同环境(windows,linux)下怎么调用说明白的,自己在实现的过程中踩了几个坑,在这里总结 ...
- Docker环境下Java应用的最大内存和堆内存的设置
Docker环境下Java应用的最大内存和堆内存的设置 1. 设置应用允许使用的最大内存 通过docker run(创建一个新的容器并运行)命令中设置-m来进行设置.案例如下所示. docker r ...
- 在MyEclipse的Maven环境下,使用mybatis-generator插件自动生成映射文件(接口)及实体类
在数据表比较多的情况下,手动编写sql映射文件和实体类,实在太多过繁琐,而mybatis-generator能自动生成这此东西,减少了重复性的工作量.mybatis-generator的配置容易出现问 ...
- OSGi运行环境下java反序列化问题的解决方式
在OSGi环境下采用以下方式对其它bundle的类进行反序列化时,会出现ClassNotFoundException异常. ByteArrayInputStream bi = new ByteArra ...
随机推荐
- 02: djangorestframework使用
1.1 djangorestframework登录.认证和权限 1.认证与权限相关模块 # -*- coding: utf-8 -*- from django.utils import six fro ...
- CentOS7 彻底关闭 IPV6
查看服务监听的IP中是否有IPv6格式的地址 netstat -tuln 如果有tcp6协议的就是有打开ip6 编辑/etc/default/grub,在GRUB_CMDLINE_LINUX加上的后面 ...
- JavaScript中冒泡与事件委托
冒泡 事件触发后事件流的三个阶段按顺序依次是: 1.捕获阶段 2.目标阶段 3.冒泡阶段 大盒子包裹小盒子,两个盒子都分别添加点击事件,当点击小盒子,两个盒子的事件都会触发. 事件委托 下级元素委托上 ...
- PyCharm笔记之搭建Python开发环境
新建一个空helloworld项目,然后新建一个main.py文件: 此时还无法运行,因为没有配置项目的入口脚本,通过下图的步骤指定一个: 在scrip框里填入你的入口脚本 之后就可以点击绿色的播放按 ...
- linux内核中的vgaarb是什么?
答: vga仲裁器(vga arbiter),是内核中的一个模块
- 因为强行关机, 而导致的fedora23 不能重新启动, 卡在开机logo那里的 修复 解决方案
其实, fedora23的U盘live 也很好用, 很流畅, 主要还是 要用一个比较好的/快的 U盘. 这样live U盘在4GB(3.75GiB)的内存中还是较快的 原来的U盘live系统用得很卡, ...
- 初识Java框架
Spring boot>spring>spring mvc SSH:struts2+spring+hibernate SSM(SSH的改进): (过去)spring+struts2+MyB ...
- ORM框架 之 Entity Framework
Entity Framework 1.ADO.NET Entity Framework是以ADO.NET为基础所发展出来的对象关系对应(O/R Mapping)解决方案,早起被称为ObjectSpac ...
- oracle 之 统计函数、子查询、操作符
统计函数 COUNT():查询表中的数据记录 AVG():求出平均值 SUM():求和 MAX():求出最大值 MIN():Q求出最小值 子查询 [单行多列] select * from a wh ...
- [午间休息] - 午间codewars活跃脑袋
https://www.codewars.com/kata/51f2b4448cadf20ed0000386/javascript 中午是一个易困的时间段.如果其它人不睡觉还好. 这个js题目就是说如 ...