<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    yxhxj2006

    常用鏈接

    統(tǒng)計(jì)

    最新評論

    用gmail smtp發(fā)送郵件

    import java.util.Properties;
    import javax.mail.Message;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;

    public class SendMail implements Runnable {
        private final String smtp_host = "smtp.gmail.com";                      
        private final String from_userName = "xx@gmail.com";        
        private final String from_passWord = "xx";                        
        private final String show_name = "xxx";
        
        public String email_address;
        public String email_subject;
        public String email_content;    
        
        public SendMail(String email_address, String email_subject, String email_content) {
            this.email_address = email_address;
            this.email_subject = email_subject;
            this.email_content = email_content;
        }

        public void run() {
            executeMailSend(email_address, email_subject, email_content);
        }
        
        /**
         * 
         * 
    @param recipients: the mail send to
         * 
    @param sendSubject: the mail subject
         * 
    @param sendText: the mail content
         
    */
        public void executeMailSend(String recipients, String sendSubject, String sendText) {
            
            try {            
                Properties props = System.getProperties();
                props.put("mail.smtp.starttls.enable", "true");
                props.put("mail.smtp.host", smtp_host);
                props.put("mail.smtp.user", from_userName);
                props.put("mail.smtp.password", from_passWord);
                props.put("mail.smtp.port", "587");  //gmail smtp port 587
                props.put("mail.smtp.auth", "true");
                

                
                Session session = Session.getDefaultInstance(props, null);
                session.setDebug(false);
                
                MimeMessage message = new MimeMessage(session);
                message.setFrom(new InternetAddress(from_userName));
                message.addRecipient(Message.RecipientType.TO, new InternetAddress(recipients));
                message.setFrom(new InternetAddress(show_name + "<" + from_userName + ">"));    
                message.setSubject(sendSubject);
                message.setContent(sendText, "text/html;charset=utf-8");            
                
                Transport transport = session.getTransport("smtp");
                transport.connect(smtp_host, from_userName, from_passWord);
                transport.sendMessage(message, message.getAllRecipients());
                transport.close();
                
                System.out.println("send an email to " + recipients + " success");
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println("failure! ");

            }
        }
        public static void main (String args[]){
            new SendMail("yy@gmail.com","test","hehe").run();
        }
    }
    結(jié)果老是報(bào)如下的錯(cuò)誤
    javax.mail.MessagingException: 530 5.7.0 Must issue a STARTTLS command first. 36sm443504yxh.67
    failure! 

        at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1020)
        at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:716)
        at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:388)
        at SendMail.executeMailSend(SendMail.java:59)
        at SendMail.run(SendMail.java:25)
        at SendMail.main(SendMail.java:70)
     折騰了個(gè)把小時(shí),苦苦尋求后發(fā)現(xiàn)一個(gè)解決辦法 
    props.put("mail.smtp.port""587");  
    替換成
    props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); 
    props.setProperty("mail.smtp.socketFactory.fallback", "false"); 
    props.setProperty("mail.smtp.port", "465"); 
    props.setProperty("mail.smtp.socketFactory.port", "465"); 
    究其原因也不太清楚,網(wǎng)上有資料說port 587也可以,不知結(jié)果不行
    把上述代碼中的 

    posted on 2013-03-08 15:16 奮斗成就男人 閱讀(1143) 評論(0)  編輯  收藏 所屬分類: java

    主站蜘蛛池模板: 亚洲国产人成中文幕一级二级| 久久久久国色AV免费观看性色| 亚洲国产精品一区二区三区久久| 亚洲男同gay片| 18禁无遮挡无码网站免费| 91丁香亚洲综合社区| 免费无码一区二区三区蜜桃大| 久久精品国产亚洲AV忘忧草18| 精品成在人线AV无码免费看| 亚洲国产成a人v在线| 午夜小视频免费观看| www亚洲精品久久久乳| 在线观着免费观看国产黄| 春暖花开亚洲性无区一区二区| 亚洲国产成人久久精品99 | 性xxxx视频免费播放直播| 777亚洲精品乱码久久久久久 | 日本视频免费高清一本18| 久久亚洲私人国产精品| 91免费国产在线观看| 亚洲色大成网站www永久男同 | 亚洲VA中文字幕无码毛片| 亚洲精品免费在线| 亚洲国产精品无码第一区二区三区 | 国产在线观看无码免费视频| 午夜影视日本亚洲欧洲精品一区| 99久久99热精品免费观看国产| 亚洲福利视频一区二区三区| 日韩免费三级电影| 精品无码国产污污污免费网站国产| 香蕉蕉亚亚洲aav综合| 中字幕视频在线永久在线观看免费| 美女视频黄频a免费观看| 亚洲AV无码乱码国产麻豆| 黄色免费网站网址| 日日摸夜夜添夜夜免费视频| 久久99亚洲网美利坚合众国| 免费h黄肉动漫在线观看| 无码A级毛片免费视频内谢| 亚洲av中文无码乱人伦在线观看| 久久亚洲高清观看|