1.我们首先要实现一个简单的注册功能,然后再实现邮箱验证功能;
2.邮箱验证功能实现:整个功能的核心是创建一个邮件工具类,这需要导入mail.jar。具体代码如下:
package com.imooc.utils;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;
/**
* @author Jason
*
*/
public class MailUtils {
/**
* @param to
* :给谁发邮件
* @param code
* :邮件的激活码
*/
public static void sendMail(String to, String code) throws Exception {
// 1.创建连接对象,连接到邮箱服务器
Properties props = new Properties();
// props.setProperty("host", value);
Session session = Session.getInstance(props, new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("service@808.com", "123456");
}
});
// 2.创建邮件对象
Message message = new MimeMessage(session);
// 2.1设置发件人:
message.setFrom(new InternetAddress("service@808.com"));
// 2.2设置收件人:
message.setRecipient(RecipientType.TO, new InternetAddress(to));
// 2.3设置邮件的主题:
message.setSubject("来自808网站激活邮件");
// 2.4设置邮件的正文:
message.setContent(
"<h1>来自808网站激活邮件,激活请点击以下链接</h1><h3><a href='http://localhost:8080/regist_web/ActiveServlet?code="
+ code
+ "'>http://localhost:8080/regist_web/ActiveServlet?code"
+ code + "</a></h3>", "text/html;charset=UTF-8");
// 3.发送一封激活邮件:
Transport.send(message);
}
}
通过使用sendMail方法,我们就可以向注册邮箱发送信息了。
3.本项目的邮箱是通过下载一个MailService邮箱服务器,然后在里面注册获得。当然,我们也可以换成真实的邮箱。
实现邮箱验证功能的完整项目下载:https://pan.baidu.com/s/165OytDXlCj9mOEEcokPqmw 提取码:v8mo
总结:这个项目简单地实现了邮箱验证功能,但有些实际运用问题还没有考虑进去,例如:这个项目没有考虑邮箱是否有效等问题。
声明:本项目是通过慕课网学习获得。