在java中如何将MimerReader的内容转换成字符串?

在java中如何将MimerReader的内容转换成字符串?,java,spring,email,mime-message,Java,Spring,Email,Mime Message,对于SimpleEmailMessage,您只需执行以下操作: SimpleMailMessage msg = new SimpleMailMessage() msg.setFrom(..) msg.setTo(..) msg.setCc(..) msg.setSubject(..) msg.setText(..) msg.toString() 结果是: SimpleMailMessage: from=test@email.com; replyTo=null; to=test@email.c

对于SimpleEmailMessage,您只需执行以下操作:

SimpleMailMessage msg = new SimpleMailMessage()
msg.setFrom(..)
msg.setTo(..)
msg.setCc(..)
msg.setSubject(..)
msg.setText(..)

msg.toString()
结果是:

SimpleMailMessage: from=test@email.com; replyTo=null; to=test@email.com; ... text=Test Body;
这是一种很好的方式,可以轻松查看SimpleEmailMessage的内容,但这是在不发送附件的情况下。我有一个我使用的附件功能

MimeMessage message = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from);
helper.setTo(to);
helper.setCc(InternetAddress.parse(cc));
helper.setSubject(subject);
helper.setText(body);
FileSystemResource file = new FileSystemResource(attachmentPath);
helper.addAttachment(fileName, file);
但是当执行
helper.toString()
message.toString()
时,它只返回java类文本


有没有一种很好的方法可以像SimpleEmailMessage那样以字符串格式显示mimMessage的内容?

我可以考虑的一个选项是使用Jackson的ObjectMapper将对象转换为JSON并打印出来,如下所示:

MimeMessage message = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom(from);
helper.setTo(to);
helper.setCc(InternetAddress.parse(cc));
helper.setSubject(subject);
helper.setText(body);
FileSystemResource file = new FileSystemResource(attachmentPath);
helper.addAttachment(fileName, file);

ObjectMapper mapper = new ObjectMapper();
String helperAsJson= mapper.writeValueAsString(helper);