spring mail 发送邮件,没有主题,没有收件人,显示乱码问题

使用spring框架风中的javamail发送邮件,遇到了一些问题。其中出现发送的邮件没有主题,没有收件人,内容显示乱码,这个问题困扰了一段时间。如在正文内容中出现:
------=_Part_28_672081.1331004489329
Content-Type: multipart/related; boundary="----=_Part_29_21386462.1331004489329"

------=_Part_29_21386462.1331004489329
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit

=?utf8?B?suLK1KOho6GjoQ==?=
------=_Part_29_21386462.1331004489329--

------=_Part_28_672081.1331004489329--


这个是因为jar包的问题。没有使用标准版的javamail.jar,而是项目中,加载了geronimo-javamail_1.4_spec-1.3.jar这个包导致的。

还有一个就是附件中文的问题。只需要在addAttachment方法中,对中文做转换解码即可。如
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper(mimeMessage,true,"utf-8");
//.....
try{
					if(isAttachment){
						helper.addAttachment(MimeUtility.encodeWord(key), file);
					}else{
						helper.addInline(MimeUtility.encodeWord(key), file);
					}
				}catch(UnsupportedEncodingException e){
					log.debug("附件中文转码错误");
					e.printStackTrace();
				}

你可能感兴趣的:(spring)