JavaWeb邮箱注册激活账号

  • 邮箱工具类MailUtil
    • 用法
    • 注意事项
  • 激活码工具类UuidUtil
    • 用法

邮箱工具类MailUtil

/*** 发邮件工具类*/
public final class MailUtils {private static final String USER = "xxxxxxxx@qq.com"; // 发件人称号,同邮箱地址private static final String PASSWORD = "xxxxxxxxxx"; // 如果是qq邮箱可以使户端授权码,或者登录密码/**** @param to 收件人邮箱* @param text 邮件正文* @param title 标题*//* 发送验证信息的邮件 */public static boolean sendMail(String to, String text, String title){try {final Properties props = new Properties();props.put("mail.smtp.auth", "true");props.put("mail.smtp.host", "smtp.qq.com");// 发件人的账号props.put("mail.user", USER);//发件人的密码props.put("mail.password", PASSWORD);// 构建授权信息,用于进行SMTP进行身份验证Authenticator authenticator = new Authenticator() {@Overrideprotected 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);// 设置发件人String username = props.getProperty("mail.user");InternetAddress form = new InternetAddress(username);message.setFrom(form);// 设置收件人InternetAddress toAddress = new InternetAddress(to);message.setRecipient(Message.RecipientType.TO, toAddress);// 设置邮件标题message.setSubject(title);// 设置邮件的内容体message.setContent(text, "text/html;charset=UTF-8");// 发送邮件Transport.send(message);return true;}catch (Exception e){e.printStackTrace();}return false;}
}

用法

1.更改工具类中的参数,设置发送邮件的账号信息。

2.邮件内容可用超链接指定url同时传递通过工具类获得的唯一激活码(获取方法在后文),激活Servlet可根据获取的激活码进行查询用户,若存在则注册状态为成功。
所以在注册的时候,要调用工具类获取激活码存入数据库,以便后面验证

String text ="邮件内容";
MailUtils.sendMail(user.getEmail(),text,"邮件主题");

注意事项

1.QQ邮箱要获取授权码,并传递到password成员变量上。
2.QQ邮箱会把发送的验证邮件里的连接提示危险,于是就不能进行正常转跳,可复制URL连同激活码参数,重新在地址栏粘贴(暂时不知道怎么解决);

激活码工具类UuidUtil

/*** 产生UUID随机字符串工具类*/
public final class UuidUtil {private UuidUtil(){}public static String getUuid(){return UUID.randomUUID().toString().replace("-","");}/*** 测试*/public static void main(String[] args) {System.out.println(UuidUtil.getUuid());System.out.println(UuidUtil.getUuid());System.out.println(UuidUtil.getUuid());System.out.println(UuidUtil.getUuid());}
}

用法

1.该类会创建全球唯一的激活码,(重复的概率微乎其微,中500万奖差不多概率)
2.静态调用

//            生成唯一的激活码String code = UuidUtil.getUuid();

JavaWeb邮箱注册激活账号相关推荐

  1. 电子邮箱注册激活(java)

    大家在注册论坛或者注册一些软件的账号的时候有时需要填写邮箱来注册,而为了测试你的邮箱是否是你自己的会给你的邮箱发送一个激活码链接,只有你点击这个链接之后邮箱才能注册成功,接下来我们就来实现一下这个流程 ...

  2. django注册发送邮箱激活账号

    在用django开发项目时,会用到注册账号发送邮箱来激活账号或接收手机验证码. 本篇博客写发送邮箱验证码,后续写发送手机验证码. 首先可以配置邮箱的一些必须的参数等 如,张三来注册 x 网站,邮箱是z ...

  3. 使用校园邮箱免费激活pycharm专业版

    pycharm专业版校园邮箱激活流程介绍: 1.网页地址 2.申请入口 3.表单填写 4.填写完成 5.邮箱验证 6.确认协议 7.注册jetbrains账号(校园邮箱注册) 8.使用说明 前提:教育 ...

  4. 校园邮箱免费激活idea等Jetbrains系列旗舰版产品

    一 准备教育网邮箱并注册JetBrains账户 如果你本身就是在校学生并且你们学校给你注册了edu后缀的邮箱,那么恭喜你,不用费劲去找教育网邮箱了.像我们学校每个人的邮箱是学号+@+学校英文缩写 .e ...

  5. 注册iTunes账号(免信用卡)

    我发现还有很多朋友不会注册免信用卡的iTunes账号,下面图文并茂将为各位介绍如何注册. 如果软件打开的不是想要的语言,是可以更换语言的,如下图 首先要打开iTunes软件后点击右下角的国徽图标后选择 ...

  6. JavaWeb25.3【综合案例:注册功能(含邮箱激活账号)】

    register.html 1 <!DOCTYPE html>2 <html lang="en">3 <head>4 <meta char ...

  7. node.js邮箱注册,激活,登陆相关案例

    email-verify 具体的详细代码github 现在的登陆系统除了第三方登陆接入以外,主要有短信登陆和邮箱登陆,按照现在实名制的特点,现在的短信登陆比较多,但是还是有一些会用到邮箱登陆的. 本文 ...

  8. 使用邮箱注册帐户以及激活

    思路: 1.注册帐户时把用户存入数据库并且设置用户状态不可用,同时给注册的邮箱发邮件. 2.邮箱的内容应该是链接到项目的激活方法,并且传入参数(注册的邮箱和验证码).(http://localhost ...

  9. 邮箱激活功能,前台用户注册后需要登录邮箱激活账号才能够登录的,请简述激活过程,重点是安全性

    在提交了注册信息后,同时在数据库中写入激活码,同时程序把激活码(链接)发送到注册者的信箱里,注册者点击激活链接后,程序会和数据库里的数据进行对比,对比通过即完成激活.           每次有新用户 ...

最新文章

  1. 解决存储过程中数据安全问题的四种方式
  2. iOS 获取当前设备型号iPhone7/iPhone7P
  3. 记录一下,Sqlite,用GB系列编码排序时是按拼音,UTF-8排序是按笔画
  4. windows环境给redis配置密码
  5. Hive 1.1.1 启动错误
  6. 怎么返回404_seo如果出现404页面怎么办?如何解决?
  7. 前端学习(574):margin无效情形之绝对定位下的非定义的方向“无效”
  8. fopen与读写的标识r,r+,rb+,rt+,w+.....
  9. 理解JS的6种继承方式
  10. 洛谷——P1311 选择客栈
  11. ARM汇编指令格式及规则
  12. oracle将把varchar2字段(长度4000)改为clob类型
  13. JavaWeb出现404一个很隐蔽的原因
  14. java建设银行支付_基于JAVA的建设银行账目管理系统的设计
  15. b和kb的换算_G,M,KB,B,b,MB/s,Mb/s,bps等等之间的换算
  16. 【通信仿真】Aloha协议仿真含Matlab源码
  17. java随机昵称_Java随机产生中文昵称
  18. 最全的蓝桥杯嵌入式备赛集合~
  19. 学习Transformer:自注意力与多头自注意力的原理及实现
  20. rk3588 与 rk3399 差异比较

热门文章

  1. Shopee虾皮如何跟卖爆款产品?怎么操作?
  2. LFM信号生成,matlab初等程序学习
  3. 高端大气的Emlog后台登陆界面模板
  4. java学习笔记:什么时候用assert?
  5. java assert函数_assert的用法
  6. 梦幻手游服务器维护摆摊公示时间,梦幻西游手游4月13日维护公告 摆摊调整
  7. 【UML】UML之类图
  8. Java如何创建不存在的指定路径的文件
  9. ffbe攻略站_【FFBE幻影战争攻略】狮国都有哪些角色(详细教程)
  10. Spring Learning Note