Spring电子邮件添加附件

Bob*_*Bob 2 java email spring file

我正在使用Spring 3.2并希望发送附件的电子邮件.我有一个字节数组 - 如何将其设置为附件?我这样做:

bytes[] doc = docDao.findNextDoc().getBytes();
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
try {
    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
    helper.addAttachment("doc", ???); // how can I set bytes here?
}
.... 
// other things
Run Code Online (Sandbox Code Playgroud)

Mar*_*sch 6

你可以用addAttachment()一个DataSource或一个InputStreamSource.两个接口都提供字节数组实现(例如ByteArrayDataSourceByteArrayResource).

helper.addAttachment("doc", new ByteArrayResource(doc));
Run Code Online (Sandbox Code Playgroud)

您也可能会重新考虑使用该字节数组来污染您的内存.您的DAO可能支持流,也是如此addAttachment().