微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java Mail API setContent()不是作为HTML写在邮件正文中的

我需要在邮件正文中添加一些 HTML内容.这是我到目前为止所尝试的.
message.setContent(
                      "<h1>You Have a Promotion</h1>","text/html");

            message.setContent(
                      "<h3>Your First Name :</h3>" + FirstNm,"text/html");

            message.setContent(
                      "<h3>Your Last Name :</h3>" + LastNm,"text/html");

            message.setContent(
                      "<h5>Your Employee ID :</h5>" + Employeeid,"text/html");

如果我得到Out,则只将最后一个字段显示邮件正文中,即员工ID.我想在邮件正文中显示所有三个字段.
谢谢.

解决方法

如果多次调用方法内容,它只会设置一次,它将覆盖以前的值.

试试这个 :-

message.setContent(
                      "<h1>You Have a Promotion</h1> <h3>Your First Name :</h3>" + FirstNm + 
                      "<h3>Your Last Name :</h3>" + LastNm + "<h5>Your Employee ID :</h5>" + Employeeid,"text/html");

下面是在多部分消息的情况下设置文本的代码

BodyPart messageBodyPart = new MimeBodyPart();
                // Fill the message
                messageBodyPart.setContent("<h1>You Have a Promotion</h1> <h3>Your First Name :</h3>" + FirstNm + 
                          "<h3>Your Last Name :</h3>" + LastNm + "<h5>Your Employee ID :</h5>" + Employeeid,"text/html");
                // Create a multipar message
                Multipart multipart = new MimeMultipart();
                // Set text message part
                multipart.addBodyPart(messageBodyPart);

                // Part two is attachment
                messageBodyPart = new MimeBodyPart();
                DataSource source = new FileDataSource("");//add file path
                messageBodyPart.setDataHandler(new DataHandler(source));
                messageBodyPart.setFileName("");//file name to be displayed
                multipart.addBodyPart(messageBodyPart);
                message.setContent(multipart);

原文地址:https://www.jb51.cc/java/120359.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐