鷹翔宇空

          學(xué)習(xí)和生活

          BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
            110 Posts :: 141 Stories :: 315 Comments :: 1 Trackbacks

          今天在研究javamail發(fā)信的過程中,出現(xiàn)了一些小問題,現(xiàn)總結(jié)如下,以免后來者走些不必要的彎路,先把完整的能夠正常運(yùn)行的代碼示例粘貼如下:
          發(fā)郵件源代碼:
          package com.hyq.test;

          import java.util.Properties;
          import javax.mail.*;
          import javax.mail.internet.*;

          public class MailExample {

          ? public static void main (String args[]) throws Exception {
          ???
          ??? String host = "smtp.163.com";?? //發(fā)件人使用發(fā)郵件的電子信箱服務(wù)器
          ??? String from = "你自己的電子信箱";??? //發(fā)郵件的出發(fā)地(發(fā)件人的信箱)
          ??? String to = "收件人信箱";?? //發(fā)郵件的目的地(收件人信箱)

          ??? // Get system properties
          ??? Properties props = System.getProperties();

          ??? // Setup mail server
          ??? props.put("mail.smtp.host", host);

          ??? // Get session
          ??? props.put("mail.smtp.auth", "true"); //這樣才能通過驗(yàn)證

          ??? MyAuthenticator myauth = new MyAuthenticator("你自己的電子信箱", "你自己的信箱密碼");
          ??? Session session = Session.getDefaultInstance(props, myauth);

          //??? session.setDebug(true);

          ??? // Define message
          ??? MimeMessage message = new MimeMessage(session);
          ???

          ??? // Set the from address
          ??? message.setFrom(new InternetAddress(from));

          ??? // Set the to address
          ??? message.addRecipient(Message.RecipientType.TO,
          ????? new InternetAddress(to));

          ??? // Set the subject
          ??? message.setSubject("測試程序!");

          ??? // Set the content
          ??? message.setText("這是用java寫的發(fā)送電子郵件的測試程序!");

          ??? message.saveChanges();

          ????? Transport.send(message);
          ????
          ? }
          }

          校驗(yàn)發(fā)信人權(quán)限的方法
          package com.hyq.test;

          import javax.mail.PasswordAuthentication;

          class MyAuthenticator
          ????? extends javax.mail.Authenticator {
          ??? private String strUser;
          ??? private String strPwd;
          ??? public MyAuthenticator(String user, String password) {
          ????? this.strUser = user;
          ????? this.strPwd = password;
          ??? }

          ??? protected PasswordAuthentication getPasswordAuthentication() {
          ????? return new PasswordAuthentication(strUser, strPwd);
          ??? }
          ? }


          注意:上面的事例僅為使用163信箱時發(fā)送電子郵件的方法,因?yàn)槭褂玫膆ost為:smtp.163.com,如源代碼中:String host = "smtp.163.com";?? //發(fā)件人使用發(fā)郵件的電子信箱服務(wù)器,如果使用其它的電子郵件發(fā)送,就必須在其郵件服務(wù)器上查找相應(yīng)的電子郵件服務(wù)器,例如搜狐就要使用smtp.sohu.com,具體情況具體對待,都可以從所使用的郵件服務(wù)器上獲得的。如果沒有使用host ,也就是說,沒有進(jìn)行props.put("mail.smtp.host", host);設(shè)置,那么就會拋javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25;的異常。當(dāng)然了,如果你沒有正確配置,這個異常仍然會被拋出的。

          有些郵件服務(wù)系統(tǒng)是不需要驗(yàn)證發(fā)件人的授權(quán)的,所以可以很簡單的使用
          ??? Session session = Session.getDefaultInstance(props, null);
          ???????????? 而不必使用
          ??? props.put("mail.smtp.auth", "true");?
          ??? MyAuthenticator myauth = new MyAuthenticator("你自己的電子信箱", "你自己的信箱密碼");
          ??? Session session = Session.getDefaultInstance(props, myauth);

          就可以發(fā)送電子郵件了,這個多為一些企事業(yè)單位的內(nèi)部電子信箱系統(tǒng)。
          但是對于很多門戶網(wǎng)站上的電郵系統(tǒng),如:163,sohu,yahoo等等,如果仍然簡單的這樣使用就會拋

          com.sun.mail.smtp.SMTPSendFailedException: 553 authentication is required,smtp8,wKjADxuAyCAfmnZE8BwtIA==.32705S2


          ?at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)

          ?at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)

          ?at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)

          ?at javax.mail.Transport.send0(Transport.java:169)

          ?at javax.mail.Transport.send(Transport.java:98)

          這樣的異常,要求你必須進(jìn)行授權(quán)校驗(yàn),它的目的就是阻止他人任意亂發(fā)郵件,也算是為了減少垃圾郵件的出現(xiàn)吧。這時候,我們就要使用
          ??? props.put("mail.smtp.auth", "true");?
          ??? MyAuthenticator myauth = new MyAuthenticator("你自己的電子信箱", "你自己的信箱密碼");
          ??? Session session = Session.getDefaultInstance(props, myauth);

          這里還有一個特別注意的事情:在你使用Session.getDefaultInstance時,一定要將??? props.put("mail.smtp.auth", "true");?置為true,它默認(rèn)的是false,如果你沒有做這一步,雖然你使用了Session.getDefaultInstance(props, myauth);,你自己也確實(shí)??? MyAuthenticator myauth = new MyAuthenticator("你自己的電子信箱", "你自己的信箱密碼");但是它仍然會拋出
          com.sun.mail.smtp.SMTPSendFailedException: 553 authentication is required,smtp8,wKjADxJA2SBrm3ZEFv0gIA==.40815S2


          ?at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)

          ?at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)

          ?at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)

          ?at javax.mail.Transport.send0(Transport.java:169)

          ?at javax.mail.Transport.send(Transport.java:98)
          這樣的異常。我就在這一步費(fèi)了好長時間,后來才發(fā)現(xiàn)了這個問題,很是郁悶。不過還好,總算解決了。

          其實(shí)上面的做法只是比較簡單的一種,也有很多其它的寫法,如:
          Properties props = System.getProperties();可以使用
          Properties props = new Properties();來代替。

          Transport.send(message);可以使用下面的代碼來代替
          ????? String username = "你的電子信箱用戶名";
          ????? String password = "你的電子信箱密碼";
          ????? message.saveChanges(); //??? implicit with send()
          ????? Transport transport = session.getTransport("smtp");
          ????? transport.connect("mail.htf.com.cn", username, password);
          ????? transport.sendMessage(message, message.getAllRecipients());
          ????? transport.close();
          這種方法在同時發(fā)送多封電子郵件時比較有用。

          還有一些具體的相關(guān)概念,可以查看相關(guān)的官方文檔,在我查詢資料時,發(fā)現(xiàn)了一篇文章寫得相當(dāng)仔細(xì),可以加以參考:http://www.matrix.org.cn/resource/article/44/44101_JavaMail.html

          另附上使用org.apache.commons.mail進(jìn)行發(fā)電子郵件的示例:
          import org.apache.commons.mail.SimpleEmail;
          import org.apache.commons.mail.*;

          public class TestCommon {
          ? public TestCommon() {
          ? }
          ? public static void main(String[] args){
          ??? SimpleEmail email = new SimpleEmail();
          ??? email.setHostName("smtp.163.com");//設(shè)置使用發(fā)電子郵件的郵件服務(wù)器
          ??? try {
          ????? email.addTo("收件人信箱");
          ????? email.setAuthentication("發(fā)件人信箱","發(fā)件人信箱密碼");
          ????? email.setFrom("發(fā)件人信箱");
          ????? email.setSubject("Test?apache.commons.mail message");
          ????? email.setMsg("This is a simple test of commons-email");
          ????? email.send();
          ??? }
          ??? catch (EmailException ex) {
          ????? ex.printStackTrace();
          ??? }
          ? }
          }





          posted on 2006-05-26 14:18 TrampEagle 閱讀(75393) 評論(36)  編輯  收藏 所屬分類: 學(xué)習(xí)體會

          Feedback

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2006-06-16 20:19 frankie
          哈哈,我剛才在看JavaMail,調(diào)試這個例子出線了上面的錯誤,看了你的文章就解決了,謝謝啊!去看世界杯了  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2006-08-16 17:42 lxy
          非常感謝上面的仁兄,謝謝拉!終于可以解決發(fā)郵件的問題拉!!!謝謝~~~~~  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2006-09-10 10:32 gorebill
          真是太好了  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2006-12-30 17:42 ahu
          謝謝你了 我的問題也解決了   回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2007-04-09 17:19 jerry
          出現(xiàn)com.sun.mail.smtp.SMTPSendFailedException: 550
          是什么原因造成的啊??  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-04-16 19:25 BruceJini@126.com
          我靠,真是太好了,我的問題完全和你的一樣,太謝謝了  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-05-11 09:36 你好
          謝謝,正好需要這方面的資料,太感謝你了。  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-06-29 13:31 tzming
          這個示例講的太明白了.非常好!
          我有兩個163.com郵箱,用其中一個就發(fā)郵件成功.用另外一個發(fā)郵件就會報錯,我用我的QQ信箱也報錯.代碼相同.
          報錯:QQ信箱
          535 Error: authentication failed
          javax.mail.AuthenticationFailedException
          或者是163信箱.
          550 Error: 用戶被鎖定
          javax.mail.AuthenticationFailedException
          不知道為什么????
            回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-08-02 10:38
          謝謝你啊!正在搞這個,太謝謝了!  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-09-10 11:31 eydp
          String smtp = "smtp.163.com"; // 設(shè)置發(fā)送郵件所用到的smtp
          .....
          props.put("mail.smtp.auth", "true"); // 是否到服務(wù)器用戶名和密碼驗(yàn)證
          props.put("mail.smtp.host", smtp); // 設(shè)置SMTP主機(jī)
          props.put("mail.smtp.user", servername);
          props.put("mail.smtp.password",serverpaswd);
          // 到服務(wù)器驗(yàn)證發(fā)送的用戶名和密碼是否正確
          Email_Autherticatorbean myEmailAuther = new Email_Autherticatorbean(servername, serverpaswd);
          // 設(shè)置郵件會話
          mailSession = javax.mail.Session.getDefaultInstance(props,(Authenticator) myEmailAuther);

          "smtp.163.com"; 報錯:
          DEBUG SMTP: Found extension "PIPELINING", arg ""
          DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN"
          DEBUG SMTP: Found extension "AUTH=LOGIN", arg "PLAIN"
          DEBUG SMTP: Found extension "8BITMIME", arg ""
          DEBUG SMTP: Attempt to authenticate
          AUTH LOGIN
          334 dXNlcm5hbWU6
          eW91ZGVwZW5n
          334 UGFzc3dvcmQ6
          NHlvdWRlcGVuZzQ=
          550 用戶被鎖定
          javax.mail.SendFailedException: Sending failed;
          nested exception is:
          class javax.mail.AuthenticationFailedException
          at javax.mail.Transport.send0(Transport.java:218)
          at javax.mail.Transport.send(Transport.java:80)
          at mail.a1.SendMailTest.sendmail(SendMailTest.java:104)
          at mail.a1.SendMailTest.main(SendMailTest.java:30)

          如果換成smtp.sina.com就可以發(fā)了!  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2007-09-10 12:16 lcgxc
          我用163不行,換成了smtp.tom.com就好了,不知為什么。  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-11-09 23:49 ad100@21cn.com
          報認(rèn)證失敗時,這樣寫就能通過:
          props.put("mail.smtp.auth", "true");
          Session session = Session.getDefaultInstance(props, new Authenticator(){
          protected PasswordAuthentication getPasswordAuthentication() {
          return new PasswordAuthentication(username, password);
          }});

          ----
          注意:
          username, password在上面要有定義  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2007-12-18 12:55 痞子z
          我在用javamail發(fā)送郵件時總是報未授權(quán)錯誤,但是在發(fā)送之前已經(jīng)設(shè)置好了mail.smtp.auth=true,另外還引用了SmtpAuthenticator sa = new SmtpAuthenticator();/*SmtpAuthenticator是繼承了javax.mail.Authenticator類的*/
          Session mailSession = Session.getInstance(props, sa);但是每次運(yùn)行結(jié)果總是如下:
          設(shè)置系統(tǒng)屬性:mail.smtp.host = smtp.163.com
          準(zhǔn)備獲取郵件會話對象!
          準(zhǔn)備創(chuàng)建MIME郵件對象!
          設(shè)置smtp身份認(rèn)證:mail.smtp.auth = true
          開始是否是需要驗(yàn)證的::---->null
          設(shè)置需要驗(yàn)證true
          設(shè)置郵件主題!
          設(shè)置發(fā)信人!
          增加郵件附件:e:\tt.txt
          正在發(fā)送郵件....
          郵件發(fā)送失敗!javax.mail.AuthenticationFailedException
          javax.mail.AuthenticationFailedException
          at javax.mail.Service.connect(Service.java:264)
          at javax.mail.Service.connect(Service.java:134)
          at cn.com.testmail.vv.sendMail.sendout(sendMail.java:233)
          at cn.com.testmail.vv.sendMail.main(sendMail.java:273)

          請問是為什么?謝謝  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2008-08-12 01:22 過客
          太謝謝了。終于發(fā)出去了  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2008-08-18 23:05 劉毅
          解決了sina
          126和qq 都是這樣的問題
          550 用戶被鎖定
          Exception in thread "main" javax.mail.SendFailedException: Sending failed;
          nested exception is:
          class javax.mail.AuthenticationFailedException
          at javax.mail.Transport.send0(Transport.java:218)
          at javax.mail.Transport.send(Transport.java:80)
          at javamail.MailExample.main(MailExample.java:34)  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2008-10-24 09:54 龍KEN
          我用的也是163的郵箱,可是不行,報告驗(yàn)證錯誤!!!
          看到上面那么多人說可以了,我感覺不是代碼的問題,是郵箱服務(wù)器的問題,可能人家改了吧,導(dǎo)致外部程序很難調(diào)用!

          我用其他的郵箱試試啊。
          要是再不行的話,我就很郁悶啦。。。。。。


          Exception in thread "main" javax.mail.SendFailedException: Sending failed;
          nested exception is:
          class javax.mail.AuthenticationFailedException
          at javax.mail.Transport.send0(Transport.java:218)
          at javax.mail.Transport.send(Transport.java:80)
          at com.hyq.test.MailExample.main(MailExample.java:48)
            回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2008-10-28 13:16 TH000
          我跟樓上的情況一樣,真是郁悶,換了sina的也是不行  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2009-01-04 14:08 戰(zhàn)神
          我的也是和樓上幾位一樣啊 郁悶死了
          搞不懂 為什么  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2009-03-18 09:45 java菜鳥
          Exception in thread "main" javax.mail.SendFailedException: Sending failed;
          nested exception is:
          class javax.mail.AuthenticationFailedException
          at javax.mail.Transport.send0(Transport.java:218)
          at javax.mail.Transport.send(Transport.java:80)
          at cjn.mail.MailExample.main(MailExample.java:48)
          我的問題差不多。還有很怪的現(xiàn)象,用早期的126郵箱可以發(fā)郵件,現(xiàn)在申請的就會報上面的錯誤,請各位大蝦幫幫忙  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2009-04-03 15:52 sun
          謝謝你的詳細(xì)講解,終于弄好了  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2009-04-19 23:01 wenhao
          從樓主上的程序看,好像 protected PasswordAuthentication getPasswordAuthentication() {
          return new PasswordAuthentication(strUser, strPwd);
          }
          這個方法沒有被調(diào)用到,我用了你的程序之后,還是一樣出現(xiàn)。
          javax.mail.AuthenticationFailedException這個錯誤,我試了126、163的郵箱,都是不行,請賜教。。  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2009-06-09 16:22 小薛
          Exception in thread "main" javax.mail.SendFailedException: Sending failed;
          nested exception is:
          class javax.mail.AuthenticationFailedException
          at javax.mail.Transport.send0(Transport.java:218)
          at javax.mail.Transport.send(Transport.java:80)
          at com.hyq.test.MailExample.main(MailExample.java:52)  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2009-07-16 13:22 聚資庫
          學(xué)習(xí)......  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2009-10-05 18:15 小 k
          頂一個,剛剛也遇到這個問題,看了樓主的帖子,很明了。  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2009-11-07 00:02 天空戀
          @痞子z
          大俠,你的這個問題雜解決的 啊,我都郁悶死了啊,搜了很多解答都不行啊,能否給我指點(diǎn)一二啊,謝謝了啊  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2011-11-03 13:56 快樂水手
          太好了.我的問題終于解決了. 多謝啊.  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2011-11-21 19:39 啦啦
          感謝!qq郵箱也可以  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2012-01-19 17:28 zhang
          非常感謝樓主!這幾天也研究了下這個問題,出現(xiàn)javax.mail.AuthenticationFailedException這個異常,還有種可能是傳入的用戶名和密碼未解密,程序在執(zhí)行PasswordAuthentication(strUser, strPwd)這里就拋上面的異常。  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2012-01-19 17:40 zhang
          對于在某些服務(wù)器上可以正常發(fā)郵件,某些服務(wù)其上不可發(fā)郵件,提示javax.mail.AuthenticationFailedException,還有種可能是可以正常發(fā)郵件的兩臺服務(wù)器在同一域內(nèi)或者收件服務(wù)器被信任,不可發(fā)郵件的兩臺服務(wù)器沒在同一域內(nèi),參考http://www.magicwinmail.com/faq_setup.php#setup2。  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2012-05-25 14:43 魏宏
          非常感謝,看了你提供的寶貴信息,我的問題也解決了,非常感謝  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2013-03-22 20:23 liaozhida
          正好用的上 謝謝 測試成功了  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2013-03-26 16:46 鞠愛華
          謝謝樓主!!!  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法[未登錄] 2014-04-10 17:38 andy
          Exception in thread "main" javax.mail.SendFailedException: Invalid Addresses;
          nested exception is:
          com.sun.mail.smtp.SMTPAddressFailedException: 553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)

          ----------------------------
          我用的是企業(yè)內(nèi)部郵箱,往別的服務(wù)器郵箱發(fā)一直報這個錯誤,往自己郵箱發(fā)卻沒有問題,上面是異常情況  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2015-08-12 15:46 林仔youyou
          package com;

          import java.util.Properties;

          import javax.mail.BodyPart;
          import javax.mail.Message;
          import javax.mail.Multipart;
          import javax.mail.Session;
          import javax.mail.Transport;
          import javax.mail.internet.InternetAddress;
          import javax.mail.internet.MimeBodyPart;
          import javax.mail.internet.MimeMessage;
          import javax.mail.internet.MimeMultipart;

          import com.abcchina.PopupAuthenticator;


          public class Send {
          public static void main(String[] args) throws Exception{
          System.out.println("");
          //
          // String host = "smtp.163.com"; // 163免費(fèi)企業(yè)郵箱的smtp服務(wù)器
          // String from = "18612372242@163.com"; // 我的企業(yè)郵箱地址
          // String to = "wangyonglin1@sina.com"; // 郵件要發(fā)送到的郵箱地址
          // String username = "18612372242";
          //
          // String password = "*******"; //



          // String host = "smtp.ym.163.com"; // 163免費(fèi)企業(yè)郵箱的smtp服務(wù)器
          // String from = "18612372242@longxrnd.com"; // 我的企業(yè)郵箱地址
          // String to = "wangyonglin1@sina.com"; // 郵件要發(fā)送到的郵箱地址
          // String username = "18612372242";

          //String password = "********"; //

          //
          String host = "smtp.exmail.qq.com"; // 163免費(fèi)企業(yè)郵箱的smtp服務(wù)器
          String from = "18612372242@longxrnd.com"; // 我的企業(yè)郵箱地址
          String to = "wangyonglin1@sina.com"; // 郵件要發(fā)送到的郵箱地址
          String username = "18612372242";

          String password = "*****"; //

          Properties props = new Properties();


          props.put("mail.smtp.host", host);
          props.put("mail.smtp.auth", "true");

          PopupAuthenticator smtpAuth = new PopupAuthenticator("18612372242@longxrnd.com", password);
          Session session = Session.getDefaultInstance(props, smtpAuth);


          session.setDebug(true);

          String msg = "hello";
          MimeMessage message = new MimeMessage(session);
          message.setFrom(new InternetAddress(from));
          message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
          BodyPart mdp = new MimeBodyPart();
          mdp.setContent(msg, "text/html;charset=gb2312");
          Multipart mm = new MimeMultipart();
          mm.addBodyPart(mdp);
          message.setContent(mm);

          message.setSubject("這是一個好消息");
          message.saveChanges();
          Transport transport = session.getTransport("smtp");
          transport.connect(host, username, password);
          transport.sendMessage(message, message.getAllRecipients());
          transport.close();


          }
          }
            回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2015-08-12 15:47 林仔youyou
          剛做了一個 發(fā)送企業(yè)郵箱的,有什么不明白的可以咨詢我:qq 775048682,歡迎大家交流  回復(fù)  更多評論
            

          # re: 使用javamail發(fā)信過程中的一些問題及解決方法 2015-09-05 00:06 手動閥
          @痞子z
          大哥求解,  回復(fù)  更多評論
            

          主站蜘蛛池模板: 庆云县| 尼勒克县| 皮山县| 额济纳旗| 陕西省| 大同市| 永清县| 镇宁| 灵台县| 贵定县| 五家渠市| 安多县| 犍为县| 温州市| 商都县| 平邑县| 库车县| 五大连池市| 和龙市| 静宁县| 阿城市| 隆安县| 甘孜县| 车险| 扎鲁特旗| 林州市| 丰城市| 溆浦县| 汉中市| 文化| 关岭| 乌兰察布市| 怀宁县| 利辛县| 顺义区| 怀集县| 青阳县| 白水县| 信阳市| 出国| 绥宁县|