用 vscode 配置 java 開發環境發 qq 郵件

pardon110發表於2020-05-18

安裝jdk

用vscode配置java開發環境
直接安裝下一步即是
用vscode配置java開發環境

安裝maven

用vscode配置java開發環境
若想多版本切換,刪除環境變數中的javapath即可

用vscode配置java開發環境

安裝外掛

vscode外掛裝一個pack就行了,後續想裝哪個就哪個

用vscode配置java開發環境

使用第三方jar包

簡單嚐鮮某個jar包,使用maven或gradle太重。而配置一下.setting.json,然後將jar包直接放入該資料夾下即可,不需要手動新增到classpath。

用 vscode 配置 java 開發環境
當然前提是jar包先手動下載,大規模多依賴,還是需要使用構建工具+vscode外掛形式。

郵件傳送

示例用第三方包mail.jar,這裡用的是qq郵箱向163發件,密碼是使用的授權碼。

 import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class SendEmail {
    public static void main(String[] args) {
        String to = "920061142@163.com";
        String from = "pardon110@qq.com";

        // 發件箱qq授權碼
        final String pwd = "gkfa******fdcag";

        // 指定傳送郵件的主機
        String host = "smtp.qq.com";

        Properties pros = new Properties();

        pros.setProperty("mail.smtp.host", host);
        pros.put("mail.smtp.port", 465);
        pros.put("mail.transport.protocol", "smtp");
        pros.put("mail.smtp.auth", true);
        pros.put("mail.smtp.ssl.enable", "true");
        pros.put("mail.debug", "true");

        // 會話session
        Session session = Session.getDefaultInstance(pros);

        try {
            // 建立預設的訊息物件
            MimeMessage message = new MimeMessage(session);

            // 設定頭部欄位 from to
            message.setFrom(new InternetAddress(from));
            message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));

            // 設定 subject
            message.setSubject("This is the Subject Line!");
            // 訊息體
            message.setText("this is actual message,由pardon110書寫");

            Transport transport = session.getTransport();

            // 連線
            transport.connect(from, pwd);
            // 傳送
            transport.sendMessage(message, message.getAllRecipients());

            System.out.println("Sent message successfully...");

        } catch (MessagingException mex) {
            mex.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

效果

用 vscode 配置 java 開發環境

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章