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();
    }
  }
}

以上就是小编为大家带来的Java发送带html标签内容的邮件实例代码全部内容了,希望大家多多支持编程小技巧~

dawei

【声明】:丽水站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章