解决JavaMailSender发送带附件的邮件时当附件名超长会被截断的问题

it2025-05-19  9

今天发送邮件的时候发现附件名字错误如图

 解决方法:System.getProperties().setProperty("mail.mime.splitlongparameters", "false");

真鸡儿烦,不想研究原因。。。

/** * 发送包含附件的邮件 */ @Override public void sendAttachmentMail(String[] toMails, String subject, String htmlAttachText) { // 解决附件名过长被截取的问题 System.getProperties().setProperty("mail.mime.splitlongparameters", "false"); MimeMessage mimeMessage = javaMailSender.createMimeMessage(); try { // multipart模式 MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true, "utf-8"); setMailInfo(toMails, subject, htmlAttachText, mimeMessageHelper); // 设置附件 FileSystemResource xlsx = new FileSystemResource(new File("D:/MailImage/软件项目需求.xlsx")); mimeMessageHelper.addAttachment("软件项目需求.xlsx", xlsx); // 发送邮件 javaMailSender.send(mimeMessage); log.info("^o^= 邮件已发送"); } catch (Exception e) { log.info("^o^= 邮件发送失败{}:",e); } }

最新回复(0)