java 发邮件插件_JavaMail插件

public classMailUtil {//修改为自己的qq邮箱账号

private staticString myEmailAccount= "******@qq.com";//修改为自己的邮箱授权码

private staticString myEmailPassword= "******";//如果用qq邮箱不用修改,如果用163邮箱,修改为smtp.163.com

​private staticString myEmailSMTPHost= "smtp.qq.com";private static String sendUser = "呵呵";

​/***@param @param收件人邮箱

*@param @param标题

*@param @param内容

*@param @throwsException void

*@throws* @Title: send

* @Description: TODO*/

public static void send(String receive, String title, String body) throwsException {//1. 创建参数配置, 用于连接邮件服务器的参数配置

Properties props = newProperties();//使用的协议(JavaMail规范要求)

props.setProperty("mail.transport.protocol","smtp");//发件人的邮箱的 SMTP 服务器地址

props.setProperty("mail.smtp.host", myEmailSMTPHost);//需要请求认证

props.setProperty("mail.smtp.auth","true");/** 需要SSL安全配置的需要以下配置

* SMTP 服务器的端口 (非SSL连接的端口一般默认为25, 可以不添加, 如果开启了SSL连接,

* 需要改为对应邮箱的 SMTP 服务器的端口, 具体可查看对应邮箱服务的帮助,

* QQ邮箱的SMTP(SLL)端口为465或587,其他邮箱自行去查看)*/

final String smtpPort = "465";

props.setProperty("mail.smtp.port", smtpPort);

props.setProperty("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory");

props.setProperty("mail.smtp.socketFactory.fallback" ,"false");

props.setProperty("mail.smtp.socketFactory.port", smtpPort);//2. 根据配置创建会话对象, 用于和邮件服务器交互

Session session =Session.getDefaultInstance(props);//设置为debug模式, 可以查看详细的发送 log

session.setDebug(true);//3. 创建一封邮件

MimeMessage message =createMimeMessage(session, myEmailAccount, receive, title, body);//4. 根据 Session 获取邮件传输对象

Transport transport =session.getTransport();//5.使用 邮箱账号 和 密码 连接邮件服务器, 这里认证的邮箱必须与 message 中的发件人邮箱一致, 否则报错

transport.connect(myEmailAccount,myEmailPassword);//6. 发送邮件, 发到所有的收件地址, message.getAllRecipients() 获取到的是在创建邮件对象时添加的所有收件人, 抄送人, 密送人

transport.sendMessage(message, message.getAllRecipients());//7. 关闭连接

transport.close();

}

​/*** @Title: createMimeMessage

* @Description: TODO

*@param @paramsession 和邮件服务器交

* 互的会话对象

*@param @paramsendMail 发件人的邮箱帐

* 号

*@param @paramreceiveMail 收件人的邮

* 箱帐号

*@param @paramtitle 邮件主题

*@param @parambody 邮件内容

*@param @return创建的邮件对象

*@param @throwsException MimeMessag

* e

*@throws

*/

private static MimeMessage createMimeMessage(Session session, String sendMail,String receiveMail, String title, String body) throwsException {//1. 创建一封邮件

MimeMessage message = newMimeMessage(session);//2. From: 发件人(发件人邮箱地址,发件人名称, 编码格式)

message.setFrom(new InternetAddress(sendMail, sendUser,"UTF-8"));//3. To: 收件人(可以增加多个收件人、抄送、密送)

message.setRecipient(MimeMessage.RecipientType.TO, new InternetAddress(receiveMail,"尊敬的用户" ,"UTF-8"));//4. Subject: 邮件主题

message.setSubject(title,"UTF8");//5. Content: 邮件正文(可以使用htm l标签)

message.setContent(body,"text/html; charset = UTF-8 ");//6. 设置发件时间

message.setSentDate(newDate());//7. 保存设置

message.saveChanges();returnmessage;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值