使用java email 进行邮箱验证

来源:互联网 发布:陈浩筹码分布源码公式 编辑:程序博客网 时间:2024/05/19 13:06

第一步,先写emailUntils类

package com.yinhe.utils;import java.util.Properties;import javax.mail.Authenticator;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.PasswordAuthentication;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMessage.RecipientType;public class MailUtils {public static void sendMail(String email, String emailMsg)throws AddressException, MessagingException {// 1.创建一个程序与邮件服务器会话对象 SessionProperties props = new Properties();props.setProperty("mail.transport.protocol", "SMTP");props.setProperty("mail.host", "smtp.163.com");props.setProperty("mail.smtp.auth", "true");// 指定验证为true// 创建验证器Authenticator auth = new Authenticator() {public PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication("peiyifeitest222@163.com", "peiyifei888");}};Session session = Session.getInstance(props, auth);// 2.创建一个Message,它相当于是邮件内容Message message = new MimeMessage(session);message.setFrom(new InternetAddress("peiyifeitest222@163.com")); // 设置发送者message.setRecipient(RecipientType.TO, new InternetAddress(email)); // 设置发送方式与接收者message.setSubject("用户激活");// message.setText("这是一封激活邮件,请<a href='#'>点击</a>");message.setContent(emailMsg, "text/html;charset=utf-8");// 3.创建 Transport用于将邮件发送Transport.send(message);}}

第二步;进行激活字段更改

public int activeUser(String uid) throws SQLException{String sql="update user set state=1 where uid=?";QueryRunner qr=new QueryRunner(DataSourceUtils.getDataSource());return qr.update(sql,uid);}


第三步,在servlet中进行方法调用

String emailMsg="恭喜你注册成功,<a href='http://localhost:8081/ShopStore/UserServlet?method=activeUser&activecode="+user.getUid()+"'>请点击此处激活邮箱"+ "如果打不开,请复制以下网址进入:<br/> http://localhost:8081/ShopStore/UserServlet?method=activeUser&activecode="+user.getUid()+"</a>";if(result){try {MailUtils.sendMail(user.getEmail(), emailMsg);response.setContentType("text/html;charset=UTF-8");response.getWriter().println("<script> confirm('邮件发送成功'); location.href='registerSuccess.jsp';</script>");} catch (Exception e) {// TODO Auto-generated catch blockresponse.setContentType("text/html;charset=UTF-8");response.getWriter().println("<script> confirm('邮件发送失败'); location.href='registerFail.jsp';</script>");}



原创粉丝点击