我正在尝试使用JavaMailSender发送电子邮件。我在HTML中的href标记中有一个动态链接,我必须替换它。在我的数据库中,我存储了:
<p>You're file is ready</p>
<p>This is the link:</strong></p>
<p><a href="$link">$link</a></p>
因此,我在Java Spring中的变量文本中检索该字符串,并发送电子邮件:
text = text.replace("$link",link);
mimeMessageHelper.setText(text, true);
//mimeMessageHelper.setText(reportConf.getMailText()+"\n"+link);
LOGGER.info("Textmail: " + text);
javaMailSender.send(mimeMessage);
在记录器中,我看到:
<p><a href="mylink.com">mylink.com</a></p>
但在电子邮件中我看到:
You're file is ready
This is the link:
[mylink.com]mylink.com
而且这两个链接都不可点击。这有什么问题吗?替换不是要使用的正确功能?
问题似乎是由于正文内容类型不正确引起的,请尝试按以下方式设置内容:
String msg = "This is my first email using JavaMailer";
MimeBodyPart mimeBodyPart = new MimeBodyPart();
mimeBodyPart.setContent(msg, "text/html; charset=utf-8");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(mimeBodyPart);
使用Java发送电子邮件