Java實現郵件發送功能


import java.util.Properties;
import javax.mail.Address;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
 
public class SendEmailUtil {
    
    public static boolean sendMail(String emailAddress, String emailMsg) {
        
        // 誰發送(發送方)
        String from = "";
        
        // 發給誰
        String to = emailAddress;
        
        // 發送者的用戶名和密碼(郵箱登錄用)
        final String username = ""; // 此處填寫發送的郵箱名
        final String password = ""; // 此處填寫登錄的郵箱密碼
 
        // 定義properties對象,設置環境信息
        Properties properties = new Properties();
        
        /*
         * mail.smtp.host :指定連接的郵件服務器的主機名。如:163郵箱就填寫smtp.163.com 
         * 若在本地測試的話,需要在本地安裝smtp服務器
         */
        properties.setProperty("mail.smtp.host", "smtp.163.com");
        
        // mail.smtp.auth:指定客戶端是否要向郵件服務器提交驗證
        properties.setProperty("mail.smtp.auth", "true");
        
        /*
         * mail.transport.protocol:指定郵件發送協議:smtp。smtp:發郵件;pop3:收郵件
         * mail.store.protocol:指定郵件接收協議
         */
        properties.setProperty("mail.transport.protocol", "smtp");
        
        // 獲取session對象
        Session session = Session.getInstance(properties);
        
        // 當設置為true,JavaMail AP就會將其運行過程和郵件服務器的交互命令信息輸出到console中,用於JavaMail的調試
        session.setDebug(true);
        try {
            
            // 創建郵件對象
            MimeMessage message = new MimeMessage(session);
            
            // 設置郵件發送方
            message.setFrom(new InternetAddress(from));
            
            // 設置郵件發送的主題<郵件標題>
            message.setSubject("郵件發送設置");
            
            // 設置郵件發送的內容
            message.setContent(emailMsg,"text/html;charset=utf-8");
            Transport transport=session.getTransport();
            
            // 連接郵件服務器,“”中填寫郵件服務器主機名
            transport.connect("",25, username, password);
            transport.sendMessage(message,new Address[]{new InternetAddress(to)});
            transport.close();
            return true;
        } catch (MessagingException e) {
            e.printStackTrace();
            return false;
        }
    }
    

 


免責聲明!

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



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