javamail实现邮箱验证代码记录
来源:互联网 发布:c语言游戏编程入门 编辑:程序博客网 时间:2024/06/05 22:37
package cn.tedu.tools;
import java.util.Date;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
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.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class SendEmail2 {
private final static String HOST = "smtp.163.com";
private final static String PORT = "25";
private final static String PROTOCOL ="smtp";
private final static String SENDER = "xxxx@163.com";
private final static String SENDERPWD = "xxx";
private SendEmail2(){}
/**
* 获取邮件发送的Session
* @return
*/
public static Session getSession(){
Properties props = new Properties();
props.put("mail.smtp.host",HOST);
props.put("mail.store.protocol",PROTOCOL);
props.put("mail.smtp.port",PORT);
props.put("mail.smtp.auth",true);
Authenticator authenticator = new Authenticator(){
public PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication(SENDER,SENDERPWD);
}
};
return Session.getDefaultInstance(props, authenticator);
}
/**
* 发送邮件
* @param receiver 收件箱
* @throws MessagingException
* @throws AddressException
*/
public static void send(String receiver) throws Exception{
System.out.println("-------开始发送-------");
Session session = getSession();
//获取代表邮件的对象
Message message = new MimeMessage(session);
//设置发件人,并对发件人的邮箱进行处理。
message.setFrom(new InternetAddress(SENDER));
//设置收件人
message.setRecipient(Message.RecipientType.TO, new InternetAddress(receiver));
//设置邮件主题
message.setSubject("fitness注册登录验证");
//设置发送时间
message.setSentDate(new Date());
//获取MimePart,一个MimeBodyPart代表邮件的一个模块。
MimeBodyPart text = new MimeBodyPart();
//获取随机的验证消息 //TODO
text.setContent("验证码:"+getContent()+"<img src='cid:1.jpg'>", "text/html;charset=utf-8");
//获取一个图片消息添加图片
MimeBodyPart image = new MimeBodyPart();
//获取一个数据处理器,从数据源中获取数据
//数据处理器自动感知数据类型
DataHandler dh = new DataHandler(new FileDataSource("src/main/java/1.jpg"));
//将dh传递在BodyPort中,
image.setDataHandler(dh);
image.setContentID("1.jpg");//将会挂载到<img>中
//获取一个附件的mime消息
MimeBodyPart attach = new MimeBodyPart();
DataHandler dher = new DataHandler(new FileDataSource("src/main/java/2.jpg"));
attach.setDataHandler(dher);
//为附件设置文件文件名,将自动生成Content-Disposition这个头字段
attach.setFileName(dher.getName());
//设置两部分数据之间的关系
MimeMultipart content = new MimeMultipart();
content.addBodyPart(text);
content.addBodyPart(image);
content.setSubType("related");
MimeBodyPart mbp = new MimeBodyPart();
mbp.setContent(content);
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(mbp);
mm.addBodyPart(attach);
mm.setSubType("mixed");
message.setContent(mm);
Transport.send(message);
System.out.println("-------发送完成-------");
}
/**
* 生产邮件内容
* @return
*/
public static String getContent(){
return "你好";
}
}
import java.util.Date;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
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.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class SendEmail2 {
private final static String HOST = "smtp.163.com";
private final static String PORT = "25";
private final static String PROTOCOL ="smtp";
private final static String SENDER = "xxxx@163.com";
private final static String SENDERPWD = "xxx";
private SendEmail2(){}
/**
* 获取邮件发送的Session
* @return
*/
public static Session getSession(){
Properties props = new Properties();
props.put("mail.smtp.host",HOST);
props.put("mail.store.protocol",PROTOCOL);
props.put("mail.smtp.port",PORT);
props.put("mail.smtp.auth",true);
Authenticator authenticator = new Authenticator(){
public PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication(SENDER,SENDERPWD);
}
};
return Session.getDefaultInstance(props, authenticator);
}
/**
* 发送邮件
* @param receiver 收件箱
* @throws MessagingException
* @throws AddressException
*/
public static void send(String receiver) throws Exception{
System.out.println("-------开始发送-------");
Session session = getSession();
//获取代表邮件的对象
Message message = new MimeMessage(session);
//设置发件人,并对发件人的邮箱进行处理。
message.setFrom(new InternetAddress(SENDER));
//设置收件人
message.setRecipient(Message.RecipientType.TO, new InternetAddress(receiver));
//设置邮件主题
message.setSubject("fitness注册登录验证");
//设置发送时间
message.setSentDate(new Date());
//获取MimePart,一个MimeBodyPart代表邮件的一个模块。
MimeBodyPart text = new MimeBodyPart();
//获取随机的验证消息 //TODO
text.setContent("验证码:"+getContent()+"<img src='cid:1.jpg'>", "text/html;charset=utf-8");
//获取一个图片消息添加图片
MimeBodyPart image = new MimeBodyPart();
//获取一个数据处理器,从数据源中获取数据
//数据处理器自动感知数据类型
DataHandler dh = new DataHandler(new FileDataSource("src/main/java/1.jpg"));
//将dh传递在BodyPort中,
image.setDataHandler(dh);
image.setContentID("1.jpg");//将会挂载到<img>中
//获取一个附件的mime消息
MimeBodyPart attach = new MimeBodyPart();
DataHandler dher = new DataHandler(new FileDataSource("src/main/java/2.jpg"));
attach.setDataHandler(dher);
//为附件设置文件文件名,将自动生成Content-Disposition这个头字段
attach.setFileName(dher.getName());
//设置两部分数据之间的关系
MimeMultipart content = new MimeMultipart();
content.addBodyPart(text);
content.addBodyPart(image);
content.setSubType("related");
MimeBodyPart mbp = new MimeBodyPart();
mbp.setContent(content);
MimeMultipart mm = new MimeMultipart();
mm.addBodyPart(mbp);
mm.addBodyPart(attach);
mm.setSubType("mixed");
message.setContent(mm);
Transport.send(message);
System.out.println("-------发送完成-------");
}
/**
* 生产邮件内容
* @return
*/
public static String getContent(){
return "你好";
}
}
阅读全文
0 0
- javamail实现邮箱验证代码记录
- javamail实现邮箱验证功能
- JavaMail实现邮箱验证码
- javamail实现邮箱验证的异常
- JavaMail实现注册邮箱验证案例
- JavaMail实现简单邮箱验证——163邮箱
- JavaMail进行邮箱验证
- JavaMail发邮箱代码
- struts、hibernate框架下实现javamail邮箱验证
- Jsoup+JavaMail实现自动投票,验证邮箱功能
- Java注册邮箱激活验证实现代码
- Java注册邮箱激活验证实现代码
- Java注册邮箱激活验证实现代码
- Java注册邮箱激活验证实现代码
- 实现邮箱验证功能的代码
- javamail实现解析邮箱收件箱
- JavaMail——邮箱验证用户注册
- 使用 javamail 做邮箱验证功能
- 使用c3p0创建项目步骤
- Blog 终于写好了
- Linux进程、线程中的常用函数
- Android 创建socket客户端
- spring boot 读取配置文件(application.yml)中的属性值
- javamail实现邮箱验证代码记录
- 机器学习中常用的距离和相似性度量方法
- cJSON学习笔记(一)
- request的常用方法
- ajax保存注意异常
- 关于JSF懒模型的设计与使用
- 免费提供各种编程语言视频教程资料!(福利!)
- 机器学习算法(3) 朴素贝叶斯
- try catch 语句