JavaMail收发邮件的一般流程与主要方法

时间:2020-12-09 03:02:07

1、Properties属性类

Properties p = new Properties();

p.put(key, value);

key -| mail.smtp.host

-| mail.smtp.port

-| mail.smtp.auth ->"true":"false"

2、生成Authenticator的子类

@Override

protected PasswordAuthentication getPasswordAuthentication(){

return new PasswordAuthentication(userName, password);

}

3、新建地址

Address from=new InternetAddress(strAddress);

4、根据邮件会话属性和密码验证器构造一个发送邮件的session

Session sendMailSession = Session.getDefaultInstance(properties,authenticator);

5、 根据session创建一个邮件消息

Message mailMessage = new MimeMessage(sendMailSession);

mailMessage.setFrom(from);

mailMessage.setRecipient(Message.RecipientType.TO,to);

mailMessage.setSubject(mailInfo.getSubject()); 

mailMessage.setSentDate(new Date());

//发送文本邮件

mailMessage.setText(mailContent) ;//设置邮件主体

//发送HTML邮件

// MiniMultipart类是一个容器类,包含MimeBodyPart类型的对象

Multipart mainPart = new MimeMultipart();

// 创建一个包含HTML内容的

MimeBodyPart BodyPart html = new MimeBodyPart();

// 设置HTML内容

html.setContent(mailInfo.getContent(), "text/html; charset=utf-8");

mainPart.addBodyPart(html);

// 将MiniMultipart对象设置为邮件内容 mailMessage.setContent(mainPart);

//发送

Transport.send(mailMessage);

-------------------------

发邮件部分完 ,待继