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. 【ArrayList】为什么java.util.concurrent 包里没有并发的ArrayList实现?
  2. ubuntu下安装lamp环境
  3. QT绘制散点图(1)
  4. 配置使用EF6.0常见的一些问题及解决方案
  5. HDU1421 搬寝室
  6. 使用html2Canvas将页面转化为canvas图片,最后长按保存到本地,史上最全 html2canvas 使用 踏坑之旅,没有之一
  7. starops 云效运维 文档_阿里云 SAE 携手云效助力「石家庄掌讯」持续交付、降本提效...
  8. eclipse启动mysql报错_Eclipse+mysql+java Eclipse中运行没有问题,但打包后运行不了,也不报错,求高手指点...
  9. 韦东山和正点原子IMX6ULL开发版的区别
  10. (转)android UI进阶之自定义组合控件
  11. oracle无会话锁表,深入浅出oracle锁 原理篇 停止无反应的sql会话
  12. 【BootStrap笔记】BootStrap+css写旅游网页面
  13. 【OpenCV】简单高效地访问图像像素
  14. 【MapGIS精品教程】006:MapGIS根据经纬度计算各比例尺图幅编号
  15. python IndentationError: unindent does not match any outer indentation level
  16. 微店关键词取商品列表API接口(item_search-根据关键词取商品列表API接口),微店API接口
  17. 点我—— ASP.NETCORE 安装CentOS
  18. Java SimpleDateFormat.setLenient(boolean lenient)方法使用
  19. 用了服务器后网站统计代码被劫持,网站劫持代码,网站被劫持怎么办 | 帮助信息-动天数据...
  20. LAPACK使用中出现问题的解决方案(VS平台下的)

热门文章

  1. python编辑ug update_PyPy3官方版下载-python编辑器 V3.4.2 官方最新版 - 安下载
  2. iOS swift UITableView的cell被点击或是用代码选中其中的UIImageView会显示Highlighted效果
  3. Thinkpad T410安装Windows Server 2008 R2
  4. 财会和计算机专业未来就业方向,高考志愿:选会计还是计算机专业,哪个就业前景更好?...
  5. java setmaxfilesize,Java ServletFileUpload.setFileSizeMax方法代碼示例
  6. Yoga 14s 使用DG系统迁移升级固态
  7. mysql硬盘最长活动时间100%_软件引起的磁盘最长活动时间100%
  8. GitHub上有趣、好玩的开源项目推荐
  9. java为啥要stw_【JVM 学习】ParNew 为什么要STW
  10. 15、配置路由器的动态路由(RIP协议)