转自:http://www.blogjava.net/amigoxie/archive/2007/04/28/114310.html
1.java代码:
/**
* 发送带附件的邮件
* @param sender 邮件发送器
* @param fileUrl 附件的绝对路径
* @throws Exception
*/
private void sendMimeMessage(final JavaMailSender sender,final String fileUrl) throws Exception {
//附件文件集合
final List files = new ArrayList();
MimeMessagePreparator mimeMail = new MimeMessagePreparator() {
public void prepare(MimeMessage mimeMessage) throws MessagingException {
try {
mimeMessage.setRecipient(Message.RecipientType.TO,
new InternetAddress("123456789@qq.com"));//收件人邮箱
mimeMessage.setFrom(new InternetAddress("chen123456789@126.com"));//发件人邮箱
mimeMessage.setSubject("修改后的文件", "gb2312"); //邮件主题
Multipart mp = new MimeMultipart();//Multipart代表正文
MimeBodyPart content = new MimeBodyPart();
content.setText("spring文件,请查收!");//邮件内容
mp.addBodyPart(content);
//向Multipart添加附件
files.add(fileUrl);//fileUrl文件的绝对路径
Iterator it = files.iterator();
while(it.hasNext()) {
sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();
MimeBodyPart attachFile = new MimeBodyPart();
String filename = it.next().toString();
FileDataSource fds = new FileDataSource(filename);
attachFile.setDataHandler(new DataHandler(fds));
attachFile.setFileName("=?GBK?B?"+enc.encode(fds.getName().getBytes())+"?=");
mp.addBodyPart(attachFile);
}
files.clear();
//向MimeMessage添加Multipart
mimeMessage.setContent(mp);
mimeMessage.setSentDate(new Date());
} catch (AddressException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (javax.mail.MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
//发送带附件的邮件
sender.send(mimeMail);
System.out.println("邮件发送成功!");
}
2.配制文件
<!-- Spring发送邮件 -->
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host">
<value>smtp.126.com</value>
</property>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.timeout">25000</prop>
</props>
</property>
<property name="username">
<!-- 发件人用户名(邮箱号) -->
<value>chen123456789</value>
</property>
<property name="password">
<!-- 发件人邮箱密码 -->
<value>xxxxxxx</value>
</property>
</bean>
分享到:
相关推荐
本例为完整的采用spring 发送带 附件的邮件。 下载后需要改动的地方: 1.在mail.properties中将接收者邮箱地址(username),邮箱密码换成真实的。 2.在SpringJavaMailDemo类中把发送者和接收者邮箱地址换成真实地址...
使用Spring Boot 开发支持多附件邮件发送微服务平台代码
和上面对比,这次发送邮件使用 MimeMessageHelper 类。MimeMessageHelper 支持发送复杂邮件模板,支持文本、附件、HTML、图片等,接下来我们会继续使用。 (3)发送带附件的邮件 在 MailService 添加 ...
这个java project的源代码 博文链接:https://kukuqiu.iteye.com/blog/161771
NULL 博文链接:https://chaoyi.iteye.com/blog/2171158
spring boot发送普通文本邮件/HTML邮件/附件邮件/图片邮件完整代码.zip
SpringBoot中整合Mail实现发送带附件的邮件示例代码SpringBoot中整合Mail实现发送带附件的邮件示例代码
Spring 封装的JavaMail,使邮件发送变的相当简单,我通过Spring的邮件发送实现了发纯文本形的内容,HTMl,带附件,带图片等示例代码,并自行测试过.希望对初学者有帮助
Spring邮件发送服务(java邮件发送),支持多附件、多人发送/抄送/暗送
数据库:sqlserver CreateHtmlTable中的生成路径和SendService中的上传路径改成自己的
主要为大家详细介绍了Spring Boot实现邮件发送功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
主要介绍了Spring Boot中利用JavaMailSender发送邮件的方法示例, 相信使用过Spring的众多开发者都知道Spring提供了非常好用的JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置...
spring整合freemarker实现发送邮件, html中内嵌图片,添加附件, 解决乱码问题.
本资源提供了一套基于Spring ...这些文件详细展示了如何使用Spring Boot构建一个邮件发送服务,该服务支持文本、附件、模板等多种实现,并具有队列和线程定时任务功能。这些文件非常适合用于学习和参考Java项目的开发。
spring邮件服务,实现java邮件发送功能,可实现多附件、多人发送/抄送/暗送