Java发送带html标签内容的邮件

package test;

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

public class SendHtmlMail {
    public static void sendMessage(String smtpHost, String from, String to,String subject, String messageText) throws MessagingException,
            java.io.UnsupportedEncodingException {

        // Step 1: Configure the mail session
        System.out.println("Configuring mail session for: " + smtpHost);
        java.util.Properties props = new java.util.Properties();
        props.setProperty("mail.smtp.auth", "true");// 指定是否需要SMTP验证
        props.setProperty("mail.smtp.host", smtpHost);// 指定SMTP服务器
        props.put("mail.transport.protocol", "smtp");
        Session mailSession = Session.getDefaultInstance(props);
        mailSession.setDebug(false);// 是否在控制台显示debug信息

        // Step 2: Construct the message
        System.out.println("Constructing message -  from=" + from + "  to=" + to);
        InternetAddress fromAddress = new InternetAddress(from);
        InternetAddress toAddress = new InternetAddress(to);

        MimeMessage testMessage = new MimeMessage(mailSession);
        testMessage.setFrom(fromAddress);
        testMessage.addRecipient(javax.mail.Message.RecipientType.TO, toAddress);
        testMessage.setSentDate(new java.util.Date());
        testMessage.setSubject(MimeUtility.encodeText(subject, "gb2312", "B"));

        testMessage.setContent(messageText, "text/html;charset=gb2312");
        System.out.println("Message constructed");

        // Step 3: Now send the message
        Transport transport = mailSession.getTransport("smtp");
        transport.connect(smtpHost, "riteng_mes", "ri-teng1234");
        transport.sendMessage(testMessage, testMessage.getAllRecipients());
        transport.close();

        System.out.println("Message sent!");
    }

    public static void main(String[] args) {

        String smtpHost = "10.131.119.36";
        String from = "Riteng_Mes@casetekcorp.com";
        String to = "Qiang1_Zhang@intra.casetekcorp.com";
        String subject = "html邮件测试"; // subject javamail自动转码

        StringBuffer theMessage = new StringBuffer();
        theMessage.append("<h2><font color=red>这倒霉孩子</font></h2>");
        theMessage.append("<hr>");
        theMessage.append("<i>年年失望年年望</i>");
        theMessage.append("<table border='1'><tr><td>aaa</td><td>bbb</td></tr><tr><td>ccc</td><td>ddd</td></tr></table>");

        try {
            SendHtmlMail.sendMessage(smtpHost, from, to, subject,theMessage.toString());
        } catch (javax.mail.MessagingException exc) {
            exc.printStackTrace();
        } catch (java.io.UnsupportedEncodingException exc) {
            exc.printStackTrace();
        }
    }
}
原文地址:https://www.cnblogs.com/azhqiang/p/4517458.html