java-邮件发送-mail.jar

//贴上工具类,直接复制使用即可

package com.oceansoft.swl.utils;

import java.util.Calendar;
import java.util.Properties;

import javax.mail.Message.RecipientType;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

import com.oceansoft.swl.common.domain.YeEmail;

/**
 * 发送邮箱验证以及通知的工具类
 * @author  LZJ
 * http://www.2cto.com/kf/201312/268157.html
 * http://www.cnblogs.com/xdp-gacl/p/4216311.html
 * 2015-9-9下午5:20:12
 */
public class YeEmailUtil {

 /**
  * 1.发送邮箱通知--邮件通知
  * @author  LZJ
  * 2015年9月9日17:34:03
  */
 public static void sendEmail(YeEmail yeEmail) throws Exception{
        Properties prop = new Properties();
//      prop.setProperty("mail.host", "smtp.sohu.com");
       // prop.setProperty("mail.host", "smtp.exmail.qq.com");

       prop.setProperty("mail.host", "smtp.163.com");
        prop.setProperty("mail.transport.protocol", "smtp");
        prop.setProperty("mail.smtp.auth", "true");
        //使用JavaMail发送邮件的5个步骤
       //1、创建session
        Session session = Session.getInstance(prop);
        //开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
        session.setDebug(true);
        //2、通过session得到transport对象
        Transport ts = session.getTransport();
        //3、使用邮箱的用户名和密码连上邮件服务器,发送邮件时,发件人需要提交邮箱的用户名和密码给smtp服务器,用户名和密码都通过验证之后才能够正常发送邮件给收件人。
        ts.connect("smtp.exmail.qq.com", "[email protected]", "xxxxx");
        //4、创建邮件
        Message message = createSimpleMail(session,yeEmail);
        //5、发送邮件
        ts.sendMessage(message, message.getAllRecipients());
        ts.close();
   
 }
 /**
  * 测试代码
  * @param  args
  * @throws Exception
  */
      public static void main(String[] args) throws Exception {
       YeEmail yeEmail = null;
          Properties prop = new Properties();
//          prop.setProperty("mail.host", "smtp.sohu.com");
        //  prop.setProperty("mail.host", "smtp.exmail.qq.com");

     prop.setProperty("mail.host", "smtp.163.com");
          prop.setProperty("mail.transport.protocol", "smtp");
          prop.setProperty("mail.smtp.auth", "true");
          //使用JavaMail发送邮件的5个步骤
         //1、创建session
          Session session = Session.getInstance(prop);
          //开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
          session.setDebug(true);
          //2、通过session得到transport对象
          Transport ts = session.getTransport();
          //3、使用邮箱的用户名和密码连上邮件服务器,发送邮件时,发件人需要提交邮箱的用户名和密码给smtp服务器,用户名和密码都通过验证之后才能够正常发送邮件给收件人。
          ts.connect("smtp.exmail.qq.com", "[email protected]", "xxxxxxx");
          //4、创建邮件
          Message message = createSimpleMail(session,yeEmail);
          //5、发送邮件
          ts.sendMessage(message, message.getAllRecipients());
          ts.close();
      }
     
      /**
      */
      public static MimeMessage createSimpleMail(Session session,YeEmail yeEmail)
              throws Exception {
          //创建邮件对象
          MimeMessage message = new MimeMessage(session);
          //指明邮件的发件人
//          message.setFrom(new InternetAddress("[email protected]"));
          message.setFrom(new InternetAddress(yeEmail.getSender()));
          //指明邮件的收件人,现在发件人和收件人是一样的,那就是自己给自己发
//          message.setRecipient(Message.RecipientType.TO, new InternetAddress("[email protected]"));
          message.setRecipient(Message.RecipientType.TO,
            new InternetAddress(yeEmail.getReceiver()));
          //邮件的标题
//          message.setSubject("只包含文本的简单邮件");
          message.setSubject(yeEmail.getTitle());
          //邮件的文本内容
//          message.setContent("只包含文本的简单邮件", "text/html;charset=UTF-8");
          message.setContent(yeEmail.getContent(), "text/html;charset=UTF-8");

          //返回创建好的邮件对象
          return message;
      }


}

 

你可能感兴趣的:(java,邮件,mail,邮件发送)