如何发送HTML电子邮件

Pre*_*rna 62 html jakarta-mail

我必须通过电子邮件发送HTML文件,但不是附件.

Message simpleMessage = new MimeMessage(mailSession);
try {
   fromAddress = new InternetAddress(from);
   toAddress = new InternetAddress(to);

} catch (AddressException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
}

try {
    simpleMessage.setFrom(fromAddress);
    simpleMessage.setRecipient(RecipientType.TO, toAddress);

    simpleMessage.setSubject(subject);
    simpleMessage.setText(text);

    Transport.send(simpleMessage);
} catch (MessagingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

它只是发送短信发送电子邮件.我想发送存储在另一个文件中但不作为附件的HTML内容

dka*_*arp 118

不要MimeMessage向你倾斜Message:

MimeMessage simpleMessage = new MimeMessage(mailSession);
Run Code Online (Sandbox Code Playgroud)

然后,当您要设置邮件正文时,请调用

simpleMessage.setText(text, "utf-8", "html");
Run Code Online (Sandbox Code Playgroud)

或者打电话

simpleMessage.setContent(text, "text/html; charset=utf-8");
Run Code Online (Sandbox Code Playgroud)

如果您更喜欢使用其他字符集utf-8,请在适当的位置替换它.

JavaMail中有额外的抽象,没用层,往往让你抱着类,如Multipart,MessageAddress,它们都具有比真正的子类要少得多的功能(MimeMultipart,MimeMessage,和InternetAddress),这实际上是越来越构建...