1. 程式人生 > >單純java程式碼實現傳送郵件

單純java程式碼實現傳送郵件

 這個是工具類直接執行main方法就可以傳送郵箱,細節方面看我另一篇文章

https://mp.csdn.net/postedit/84307897

package com.bgs.controller;

import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.Message.RecipientType;
import java.util.Date;
import java.util.Properties;

public class Send {

             private String username;//發件人的郵箱賬號

  private String password;//密碼

  private String smtpServer;//伺服器     例如qq郵箱就百度查詢其對應的服務,都是固定的

  public String getUsername() {

       return username;

  }

  public void setUsername(String username) {

       this.username = username;

  }

  public String getPassword() {

       return password;

  }

  public void setPassword(String password) {

       this.password = password;

  }

    public static void main(String[] args) {
        execute();
    }

  public static void execute() {

       System.out.println("要發郵件了。。。" + new Date());

       try {

          //查詢工單型別為新單的所有工單

                                                     //這塊不用改固定的就可以

             final Properties mailProps = new Properties();

             mailProps.put("mail.smtp.host", "smtp.qq.com");

             mailProps.put("mail.smtp.auth", "true");

             mailProps.put("mail.username", "");

             mailProps.put("mail.password", "");

             // 構建授權資訊,用於進行SMTP進行身份驗證

             Authenticator authenticator = new Authenticator() {

                  protected PasswordAuthentication getPasswordAuthentication() {

                     // 使用者名稱、密碼
                      //下面這兩行也不用動,從上面的properties裡獲取出來的
                     String userName = mailProps.getProperty("mail.username");

                     String password = mailProps.getProperty("mail.password");

                     return new PasswordAuthentication(userName, password);

                  }

              };
             // 使用環境屬性和授權資訊,建立郵件會話

             Session mailSession = Session.getInstance(mailProps, authenticator);

                  // 建立郵件訊息

                  MimeMessage message = new MimeMessage(mailSession);

                  // 設定發件人
                  InternetAddress from = new InternetAddress(mailProps.getProperty("mail.username"));
                  message.setFrom(from);
                  // 設定收件人

                  InternetAddress to = new InternetAddress("[email protected]");//把這改成你要傳送人的郵箱

                  message.setRecipient(RecipientType.TO, to);

                  // 設定郵件標題

                  message.setSubject("系統郵件:新單通知");//標題可以自己起

                  // 設定郵件的內容體

                  message.setContent("我是你爸爸", "text/html;charset=UTF-8");//內容也可以自己寫

                  // 傳送郵件
                  Transport.send(message);
       } catch (Exception ex) {
          ex.printStackTrace();
       }
  }
  public String getSmtpServer() {
       return smtpServer;
  }

  public void setSmtpServer(String smtpServer) {
       this.smtpServer = smtpServer;
  }
}