使用JavaMail实现发送邮件功能

Posted akiradunn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用JavaMail实现发送邮件功能相关的知识,希望对你有一定的参考价值。

package com.dunn.model;
import java.util.Properties;
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class Mail {
//实现[email protected]邮箱写邮件发送至[email protected]邮箱,发信和收信邮箱均开通SMTP/POP协议,发件人邮箱登陆密码为163邮箱授权码
//值得注意的是这里的密码不是真实密码,而是授权码,当输入真实密码时会出现"550 User has no permission"的Exception
       public static void send(String str)throws Exception{
           Properties props = new Properties();  
           // 开启debug调试  
           props.setProperty("mail.debug", "true");  
           // 发送服务器需要身份验证  
           props.setProperty("mail.smtp.auth", "true");  
           // 设置邮件服务器主机名  
           props.setProperty("mail.host", "smtp.163.com");  
           // 发送邮件协议名称  
           props.setProperty("mail.transport.protocol", "smtp");           
           // 设置环境信息  
           Session session = Session.getInstance(props);           
           // 创建邮件对象  
           Message msg = new MimeMessage(session);  
           msg.setSubject("图书订单");  
           // 设置邮件内容  
           msg.setText(str);  
           // 设置发件人  
           msg.setFrom(new InternetAddress("[email protected]"));           
           Transport transport = session.getTransport();  
           // 连接邮件服务器  
           transport.connect("send", "开通了SMTP协议的授权码");  
           // 发送邮件  
           transport.sendMessage(msg, new Address[] {new InternetAddress("[email protected]")});  
           // 关闭连接  
           transport.close();  
       }
}

 

以上是关于使用JavaMail实现发送邮件功能的主要内容,如果未能解决你的问题,请参考以下文章

web应用中使用JavaMail发送邮件

JavaMail实践--实现邮件发送

JavaWeb学习总结(五十三)——Web应用中使用JavaMail发送邮件

javamail发送邮件服务

Spring集成JavaMail并利用线程池发送邮件

javamail 发送邮件(SSL)