Spring||Mails

JMail可以解决Java发送邮件,通过Jmail的核心javax.mail.jar实现,通过Jmail发送邮件需要经过以下步骤

  1.创建解析邮件内容:Message类,通过javax.mail.internet.MimeMessage来构造复杂的信息

  2.使用Transpot类发送邮件,实现了SMTP的SMTPSTranspot,

  3.接收邮件,通过store类来接收邮件,他的实例对象代表了某个接收协议的邮件对象

public class Mail{
  
public void send(){
//利用Properties封装对象信息并提供服务器信息
Properties prop = System.getProperties();
//主机名 prop.put(
"mail.smtp.host",mailServer);
//是否身份验证 prop.put(
"mail.smtp.auth","true"); //创建验证器 EmailAuthenticator mailauth = new RmailAuthenticator(username,password); //获取Session对象 SessionmailSession= Session.getInstance(prop,(Authenticator)mailauth); //封装Message 对象 try{ Message message = new MimeMessage(mailSession); //设置发件人 message.setFrom(new InternetAddress(from)); //设置收件人,分为TO(主送地址)CC(抄送地址)BCC(秘密抄送) message.setRecipent(Message.RecipientType.TO,new InternetAddress(to)); //设置主题 message.setSubject(mailSubject); //设置内容,声明utf-8编码格式防止乱码 message.setContent(mailContent,"text/html;charset=utf-8"); //设置日期 message.setSentDate(new Date()); //创建Transpot实例 Transpot tran = mailSession.getTranspot("smtp"); //发送 tran.send(message,message.geetAllRecipients()); //close tran.close(); }catch(Exception ex){ ex.printStackTrace(); } } }

Spring Mail

   在Spring环境下需要在org.springframework.mail包里使用MailMessage和MailSender

MailMessage接口的方法

void setFrom(String from)  : 设置发送地址

void setTo(String to):    设置一个主送地址,如果设置多个地址,利用setTo(String[]to)

void setReplyTo(String replyTo) :设置回复地址

void setCc(String cc):设置抄送地址

MailSender接口主要方法

void Send(SimpleMailMessage simpleMessage)  发送简单信息邮件

void send(SimpleMailMessage[] simpleMessage)  一次性发送邮件

JavaMailSender

MimeMessage createMimeMessage()  为Sender相关的JavaMail Session创建一个MimeMessage对象

MimeMessage createMimeMessage(InputStream content)  使用给定的输入流作为信息来源,为Sender相关的JavaMail Session

void send(MimeMessage  mimeMessage)  发送MIME邮件

原文地址:https://www.cnblogs.com/EraserHead/p/6613117.html