亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

使用javamail實現發送郵件(QQ郵箱和163郵箱)

2019-11-06 06:14:46
字體:
來源:轉載
供稿:網友

今日研究了一下java發送郵件的程序,有兩種方法,一種是用java.mail;一種是用commons-email。

一、JAVA Mail是很常用的用于發送郵件的包,我們可以從這里獲取,或者在maven中添加如下配置:

<dependency>   <groupId>com.sun.mail</groupId>   <artifactId>javax.mail</artifactId>   <version>1.5.5</version></dependency>示例代碼如下:
package cn.mail.test;import java.util.PRoperties;import javax.mail.Authenticator;import javax.mail.Message.RecipientType;import javax.mail.MessagingException;import javax.mail.PassWordAuthentication;import javax.mail.session;import javax.mail.Transport;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;public class EmailTest {	private static boolean send_QQmail(String strMail, String strTitle, String strText){        boolean bret = false;        try        {            final Properties props = new Properties();            props.put("mail.smtp.auth", "true");            props.put("mail.smtp.host", "smtp.qq.com");            //你自己的郵箱            props.put("mail.user", "xxxxxxx@qq.com");             //你開啟pop3/smtp時的驗證碼            props.put("mail.password", "xxxxxxxx");            props.put("mail.smtp.port", "25");            props.put("mail.smtp.starttls.enable", "true");            Authenticator authenticator = new Authenticator() {                protected PasswordAuthentication getPasswordAuthentication() {                    String userName = props.getProperty("mail.user");                    String password = props.getProperty("mail.password");                    return new PasswordAuthentication(userName, password);                }            };            // 使用環境屬性和授權信息,創建郵件會話            Session mailSession = Session.getInstance(props, authenticator);            // 創建郵件消息            MimeMessage message = new MimeMessage(mailSession);            // 設置發件人            String username = props.getProperty("mail.user");            InternetAddress form = new InternetAddress(username);            message.setFrom(form);            InternetAddress to = new InternetAddress(strMail);             message.setRecipient(RecipientType.TO, to);            // 設置郵件標題            message.setSubject(strTitle);            // 設置郵件的內容體            message.setContent(strText, "text/html;charset=UTF-8");            // 發送郵件            Transport.send(message);            bret = true;        }        catch (AddressException e) {             e.printStackTrace();        }        catch (MessagingException e) {             e.printStackTrace();        }        catch (Exception e){            e.printStackTrace();        }        return bret;    }	private static boolean send_163mail(String strMail, String strTitle, String strText){        boolean bret = false;        try        {            final Properties props = new Properties();            props.put("mail.smtp.auth", "true");            props.put("mail.smtp.host", "smtp.163.com");            // 發件人的賬號            props.put("mail.user", "xxxxxxxx@163.com");            //發件人的密碼            props.put("mail.password", "xxxxxxx");             // 構建授權信息,用于進行SMTP進行身份驗證            Authenticator authenticator = new Authenticator() {                @Override                protected PasswordAuthentication getPasswordAuthentication() {                    // 用戶名、密碼                    String userName = props.getProperty("mail.user");                    String password = props.getProperty("mail.password");                    return new PasswordAuthentication(userName, password);                }            };            // 使用環境屬性和授權信息,創建郵件會話            Session mailSession = Session.getInstance(props, authenticator);            // 創建郵件消息            MimeMessage message = new MimeMessage(mailSession);            // 設置發件人            String username = props.getProperty("mail.user");            InternetAddress form = new InternetAddress(username);            message.setFrom(form);            // 設置收件人            InternetAddress to = new InternetAddress(strMail);             message.setRecipient(RecipientType.TO, to);            // 設置郵件標題            message.setSubject(strTitle);            // 設置郵件的內容體            message.setContent(strText, "text/html;charset=UTF-8");            // 發送郵件            Transport.send(message);            bret = true;        }        catch (AddressException e) {             e.printStackTrace();        }        catch (MessagingException e) {             e.printStackTrace();        }        catch (Exception e){            e.printStackTrace();        }        return bret;    }	public static void main(String[] args) {		if (send_qqmail("xxxxxx@qq.com", "測試QQ郵箱發送", "<body><p>你們好嗎</p></body>"))            System.out.println("QQ郵件發送成功");        if (send_163mail("xxxxxx@163.com", "測試網易郵箱發送", "<body><p>你們好嗎</p></body>"))            System.out.println("網易郵件發送成功");	}}這里的時候,在用QQ郵箱時,發送郵件的郵箱記得開通pop3/smtp服務。

二、使用JAVA Mail我們可以完成郵件的發送,但是我們可以發現實現過程略顯復雜,比較繁瑣,所以我們可以借助commons-email簡化發送郵件的過程,commons-email可以從這里下載,或在maven中添加如下配置:

<dependency>   <groupId>org.apache.commons</groupId>   <artifactId>commons-email</artifactId>   <version>1.4</version></dependency>示例代碼如下:
package com.mail.test;import java.util.Date;import org.apache.commons.mail.SimpleEmail;public class CommonsEmailTest{   /**    * 發送文本郵件    *     * @throws Exception    */   public static boolean sendTextMail(String strMail, String strTitle, String strText) throws Exception{	  boolean bret = false;      SimpleEmail mail = new SimpleEmail();      // 設置郵箱服務器信息      mail.setSslSmtpPort("25");      mail.setHostName("smtp.163.com");      // 設置密碼驗證器      mail.setAuthentication("XXXXXX@163.com", "XXXXXX(授權密碼)");      // 設置郵件發送者      mail.setFrom("XXXXXX@163.com");      // 設置郵件接收者      mail.addTo(strMail);      // 設置郵件編碼      mail.setCharset("UTF-8");      // 設置郵件主題      mail.setSubject(strTitle);      // 設置郵件內容      mail.setMsg(strText);      // 設置郵件發送時間      mail.setSentDate(new Date());      // 發送郵件      mail.send();	return bret;   }   public static void main(String[] args) {	   try {		if (sendTextMail("YYYYYY@qq.com", "測試QQ郵箱發送", "你們好嗎???"))		       System.out.println("QQ郵件發送成功");		} catch (Exception e) {			// TODO Auto-generated catch block			e.printStackTrace();		}   }}這里用common-email時,我選擇用163郵箱往QQ郵箱上發送郵件,發送成功,代碼量也比用mail是簡單多了

注意事項:

在用java程序發送郵件時,大部分問題是郵箱沒有開通pop3/smtp,會報javax.mail.AuthenticationFailedException,遇到這個問題首先要先確定pop3/smtp服務是否開啟,詳情參考:http://blog.csdn.net/zouxucong/article/details/60578824

這里,多謝兩位大神的文章可供參看

參考文章一:http://blog.csdn.net/jianggujin/article/details/51253129

參考文章二:http://blog.csdn.net/zhang_ruiqiang/article/details/50754615


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕国产亚洲2019| 欧美大片欧美激情性色a∨久久| 亚洲女同精品视频| 国产亚洲视频在线| 国产精品久久精品| 国产欧美精品久久久| 亚洲福利视频久久| 久久久精品亚洲| 日本成人激情视频| 日本乱人伦a精品| 色噜噜久久综合伊人一本| 久久青草精品视频免费观看| 一级做a爰片久久毛片美女图片| 国产亚洲免费的视频看| 国产精自产拍久久久久久| 热99在线视频| 欧美成人激情视频免费观看| 亚洲人成电影在线观看天堂色| www欧美日韩| 成人444kkkk在线观看| 亚洲男女性事视频| 色婷婷av一区二区三区久久| 一区二区亚洲欧洲国产日韩| 日韩成人激情在线| 亚洲伦理中文字幕| 日韩中文字幕在线免费观看| 97在线日本国产| 久久精品国产久精国产一老狼| 亚洲国产精品女人久久久| 第一福利永久视频精品| 美日韩精品免费观看视频| 尤物yw午夜国产精品视频明星| 欧美一级电影免费在线观看| 国产精品一二三视频| 午夜剧场成人观在线视频免费观看| 神马国产精品影院av| 欧美丰满片xxx777| 久久久久久com| 97在线观看免费高清| 成人精品久久一区二区三区| 欧美激情二区三区| 国产精品无av码在线观看| 国产精品爽爽爽爽爽爽在线观看| 国产欧美精品在线播放| 久久久爽爽爽美女图片| 日韩电影在线观看免费| 国产精品人人做人人爽| 国产成人免费av电影| 中文字幕亚洲一区二区三区| 国产精品精品一区二区三区午夜版| 欧美激情手机在线视频| 亚洲va欧美va国产综合久久| 岛国av一区二区三区| 色播久久人人爽人人爽人人片视av| 国产精品都在这里| 最新国产精品亚洲| 亚洲激情第一页| 欧美精品在线观看| 国产一区二区三区直播精品电影| 在线电影欧美日韩一区二区私密| 国产日韩精品综合网站| 性色av一区二区咪爱| 国产精品免费一区豆花| 欧美丰满少妇xxxxx| 97久久超碰福利国产精品…| 热久久99这里有精品| 日韩欧美一区二区在线| 精品成人69xx.xyz| 中文字幕日韩欧美精品在线观看| 久久免费国产视频| 国产精品第三页| 亚洲一区二区自拍| 日韩av一区二区在线| 久久亚洲精品网站| 久久精品一本久久99精品| 国产精品99久久久久久www| 国产免费一区二区三区香蕉精| 亚洲欧美国产高清va在线播| 国内精品中文字幕| 日韩欧美在线第一页| 亚洲高清一二三区| 精品久久久在线观看| 国模精品视频一区二区| 日韩美女视频中文字幕| 久久视频在线观看免费| 国产精品视频xxx| 97欧美精品一区二区三区| www.亚洲成人| 91久久精品美女| 日韩暖暖在线视频| 69影院欧美专区视频| 国产97在线视频| 国色天香2019中文字幕在线观看| 欧美成人激情在线| 91手机视频在线观看| 午夜精品久久久久久久久久久久久| 久久视频在线视频| 97碰在线观看| 国产精品久久久久久久久免费| 国产精品激情av电影在线观看| 最新69国产成人精品视频免费| 亚洲电影在线看| 91午夜在线播放| 欧美激情精品久久久久久大尺度| 久久久99久久精品女同性| 综合国产在线观看| 精品国产欧美成人夜夜嗨| 这里只有视频精品| 深夜福利日韩在线看| 国外色69视频在线观看| 亚洲人成亚洲人成在线观看| 在线观看免费高清视频97| 国产精品欧美久久久| 九九精品在线视频| 欧美主播福利视频| 欧美又大粗又爽又黄大片视频| 亚洲国产成人精品一区二区| 91九色视频在线| 欧美极品xxxx| 在线观看亚洲区| 亚洲国产精品久久| 亚洲第一男人天堂| 2019精品视频| 国产精品一区二区3区| 精品国产福利在线| 色噜噜久久综合伊人一本| 午夜精品美女自拍福到在线| 亚洲第一二三四五区| 日韩成人在线电影网| 亚洲日本中文字幕| 久久久久久久久久久免费| 日韩精品在线影院| 久久影院中文字幕| 日韩高清电影免费观看完整版| 欧美国产日韩精品| 欲色天天网综合久久| 亚洲一级一级97网| 国产91精品久| 久久精品视频在线| 久久免费高清视频| 欧美日韩另类在线| 精品性高朝久久久久久久| 久久理论片午夜琪琪电影网| 国产精品久久精品| 秋霞午夜一区二区| 日韩av免费在线观看| 国产成人精彩在线视频九色| 亚洲成人久久久| 亚洲桃花岛网站| 精品日韩中文字幕| 国产精品视频yy9099| 2020久久国产精品| 久久影院中文字幕| 日韩在线视频线视频免费网站| 精品一区二区三区四区在线| 日韩小视频在线| 国产精品免费视频久久久| 欧美日韩国产激情| 久久影院中文字幕| 精品久久中文字幕久久av| 91国内精品久久| 国产一区二区三区四区福利| 亚洲片国产一区一级在线观看| 欧美一级视频免费在线观看|