当我们在网站上注册一个账户,一般都会有一个验证信息发送置你的邮箱或者需要手机验证,方可注册成功,
那么这个过程是怎么实现的呢?今天主要介绍下!
一、注册邮件的发送过程
首先我们了解下注册邮件的发送过程,首先是我们登录到发送邮件的客户端,编辑邮件,将其信息存储SMTP
服务器上,然后收件方登录到收件的客户端服务器上,从POP3服务器上取出发送方发送的邮件,大致过程就是这样。
具体内容就不在这详细介绍了。
二、编辑代码
这里简单介绍下在本地发送注册邮件的过程
<span style="font-family:KaiTi_GB2312;font-size:18px;">package cn.itcast.shop.utils;
import java.net.PasswordAuthentication;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message.RecipientType;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import org.omg.CORBA.PUBLIC_MEMBER;
import org.springframework.context.support.StaticApplicationContext;
import com.sun.corba.se.impl.protocol.giopmsgheaders.Message;
/**
* 邮件发送的工具类
*
* @author X
*
*/
public class MailUitls {
/**
*
* @param to
* :收件人
* @param code
* :激活码
*/
public static void sendMail(String to, String code)
throws MessagingException {
/**
* 1.获得一个session对象
*
*/
// 获得连接对象
Properties props = new Properties();
// 发送邮件的主机
props.setProperty("mail.host", "localhost");
Session session = Session.getInstance(props, new Authenticator() {
@Override
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
// 发件人的用户名和密码,连接服务器的邮箱和密码
return new javax.mail.PasswordAuthentication("TGB@tong.com",
"111");
}
});</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">
// 创建邮件的对象
javax.mail.Message message = new MimeMessage(session);</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">
// 设置发件人</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">
try {
// 设置发件人的邮箱地址
message.setFrom(new InternetAddress("TGB@tong.com"));
// 设置收件人
message.addRecipient(RecipientType.TO, new InternetAddress(to));
// 抄送cc 密送bcc
// 设置标题
message.setSubject("来自提高班官方激活邮件");
// 设置邮件的正文
message.setContent(
"<h1>点下面连接完成操作</h><h3><a href='http://192.168.21.25:8080/SSH-shop/user_acitve.action?code="
+ code
+ "'>http://192.168.21.25:8080/SSH-shop/user_acitve.action?code="
+ code + "</a></h3>", "text/html;charset=UTF-8");
// 发送邮件
Transport.send(message);
} catch (AddressException e) {</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">
e.printStackTrace();
} catch (MessagingException e) {
e.printStackTrace();
}
}
</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">//做一个简单的测试,验证是否正确
public static void main(String[] args) {
try {
sendMail("tong@tong.com", "1231312312");
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
</span>
注意:在这里发送邮件的主机设置的是本地,也可以自行换成为其他的。
最终效果图:
简单的一个发送注册文件的过程就完成了,今天先简单介绍到这里,未完待续.....