通過java給qq郵箱發送信息


通過java程序給qq郵箱發送信息。

1、第一步:下載mail的jar包:javax.mail.jar

  下載地址:https://javaee.github.io/javamail/#Latest_News

  

 

2、直接使用下面的代碼

public static void sendMessages() {
        try {
            //創建Properties 類用於記錄郵箱的一些屬性
            final Properties props = new Properties();
            //表示SMTP發送郵件,必須進行身份驗證
            props.put("mail.smtp.auth", "true");
            //此處填寫SMTP服務器
            props.put("mail.smtp.host", "smtp.qq.com");
            //端口號,QQ郵箱給出了兩個端口,這里給出587
            props.put("mail.smtp.port", "587");
            //此處填寫你的賬號
            props.put("mail.user", "你的qq號@qq.com");
            //此處的密碼就是前面說的16位STMP口令
            //獲取口令
            props.put("mail.password", "你的口令");
            //構建授權信息,用於進行SMTP進行身份驗證
            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);
            //設置發件人
            InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
            message.setFrom(form);
 
            //設置收件人的郵箱
            InternetAddress to = new InternetAddress("收件人郵箱@qq.com");
            message.setRecipient(RecipientType.TO, to);
 
            //設置郵件主題
            message.setSubject("測試郵件");
            //設置消息日期
            message.setSentDate(new Date());
            
            //html文件
            StringBuilder sb = new StringBuilder();
            sb.append("<h1>文本內容</h1>");        
            //設置郵件的內容體
            message.setContent(sb.toString(), "text/html;charset=UTF-8");
 
            //最后當然就是發送郵件
            Transport.send(message);
            System.out.println("發送成功!");
        } catch (AddressException e) {
            System.out.println("發送失敗!"+e.getMessage());
            e.printStackTrace();
        } catch (MessagingException e) {
            System.out.println("發送失敗!"+e.getMessage());
            e.printStackTrace();
        }
    }

3、上面代碼中主要填寫三個地方

  ①:發送的郵箱號

  ②:發送的郵箱號的口令(在下面會介紹如何獲取)

  ③:接收人的郵箱號

4、這樣就可以發送郵箱給別人了。

  代碼參考:https://blog.csdn.net/qq_41750725/article/details/83831589

 

5、如何獲取發送人的口令

  ①:登錄發送方的qq郵箱-》找到賬號
  

  ②:拉到下面,找到需要開啟的服務,然后把相應的服務開啟即可。

  

  ③:開啟之后,就會獲取到一個16位的口令了。

  ④:具體參考:https://jingyan.baidu.com/article/fedf0737af2b4035ac8977ea.html

 

上面的方法只是以qq郵箱為例子,其他的郵箱也是差不多同樣的操作。下面提供各個郵箱的郵件服務器和端口號

sina.com:
POP3服務器地址:pop3.sina.com.cn(端口:110)
SMTP服務器地址:smtp.sina.com.cn(端口:25) 

sinaVIP:
POP3服務器:pop3.vip.sina.com (端口:110)
SMTP服務器:smtp.vip.sina.com (端口:25)

sohu.com:
POP3服務器地址:pop3.sohu.com(端口:110)
SMTP服務器地址:smtp.sohu.com(端口:25)

126郵箱:
POP3服務器地址:pop.126.com(端口:110)
SMTP服務器地址:smtp.126.com(端口:25)

139郵箱:
POP3服務器地址:POP.139.com(端口:110)
SMTP服務器地址:SMTP.139.com(端口:25)

163.com:
POP3服務器地址:pop.163.com(端口:110)
SMTP服務器地址:smtp.163.com(端口:25)

QQ郵箱 
POP3服務器地址:pop.qq.com(端口:110)
SMTP服務器地址:smtp.qq.com (端口:25)

QQ企業郵箱
POP3服務器地址:pop.exmail.qq.com (SSL啟用 端口:995)
SMTP服務器地址:smtp.exmail.qq.com(SSL啟用 端口:587/465)

yahoo.com:
POP3服務器地址:pop.mail.yahoo.com
SMTP服務器地址:smtp.mail.yahoo.com

yahoo.com.cn:
POP3服務器地址:pop.mail.yahoo.com.cn(端口:995)
SMTP服務器地址:smtp.mail.yahoo.com.cn(端口:587

HotMail
POP3服務器地址:pop3.live.com (端口:995)
SMTP服務器地址:smtp.live.com (端口:587)

gmail(google.com)
POP3服務器地址:pop.gmail.com(SSL啟用 端口:995)
SMTP服務器地址:smtp.gmail.com(SSL啟用 端口:587263.net:
POP3服務器地址:pop3.263.net(端口:110)
SMTP服務器地址:smtp.263.net(端口:25263.net.cn:
POP3服務器地址:pop.263.net.cn(端口:110)
SMTP服務器地址:smtp.263.net.cn(端口:25)

x263.net:
POP3服務器地址:pop.x263.net(端口:110)
SMTP服務器地址:smtp.x263.net(端口:25)

21cn.com:
POP3服務器地址:pop.21cn.com(端口:110)
SMTP服務器地址:smtp.21cn.com(端口:25)

Foxmail:
POP3服務器地址:POP.foxmail.com(端口:110)
SMTP服務器地址:SMTP.foxmail.com(端口:25)

china.com:
POP3服務器地址:pop.china.com(端口:110)
SMTP服務器地址:smtp.china.com(端口:25)

tom.com:
POP3服務器地址:pop.tom.com(端口:110)
SMTP服務器地址:smtp.tom.com(端口:25)

etang.com:
POP3服務器地址:pop.etang.com
SMTP服務器地址:smtp.etang.com

具體參考:https://blog.csdn.net/smok56888/article/details/50070453#


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM