本来计划不到一天完成的邮件发送任务,因为要使用公司的腾讯企业邮箱而折腾了一天半,最后终于在网上看到了这个帖子,腾讯企业邮箱给出的 企业邮箱提示是错误的:
端口 :25
感谢原作者,我查看到的帖子地址是:http://www.pooy.net/dedecms-set-mail-sending-problems.html
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="smtp.qq.com" />
<property name="port" value="25" />
<property name="username" value="***@bjnja.com" />
<property name="password" value="****" />
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
</props>
</property>
</bean>
Spring配置为
最后记录本次邮件发送的代码
/**
* 发送HTML信息并有附件的邮件. <br>
*/
public void sendAttachMessage(String toAddr, String fromAddr,
String subject, String conText, boolean isHtml,
List<File> inLineImgs, List<File> attachments) {
final ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] { "com/mail/applicationContext.xml" });
JavaMailSender sender = (JavaMailSender) context.getBean("mailSender");
try {
JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();
MimeMessage mailMessage = senderImpl.createMimeMessage();
MimeMessageHelper messageHelper = new MimeMessageHelper(
mailMessage, true, "utf-8");
messageHelper.setTo(toAddr);
messageHelper.setFrom(fromAddr);
messageHelper.setSubject(subject);
messageHelper.setText(conText, isHtml);
// 附图
for (File file : inLineImgs) {
messageHelper.addInline(MimeUtility.encodeWord(file.getName()),
file);
}
// 附件内容
for (File file : attachments) {
messageHelper.addAttachment(MimeUtility.encodeWord(file
.getName()), file);
}
sender.send(mailMessage);
} catch (Exception e) {
throw new RuntimeException(e);
}
}