图示:
Mail 有附件的邮件
package cn.mail; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeUtility; import org.springframework.core.io.ClassPathResource; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; /** * 有附件的邮件 * */ public class Mail { private JavaMailSender mailSender;//必须使用 JavaMailSende,是 MailSender 子接口 public void setMailSender(JavaMailSender mailSender) { this.mailSender = mailSender; } //发送 public void send(){ //建立有附件的邮件对象 MimeMessage mimeMessage = mailSender.createMimeMessage(); try { //对象,是否多部分,编码 MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "GBK"); helper.setFrom("chaoyi77@163.com"); helper.setTo("ichaoyv@163.com"); helper.setSubject("Spring 简单邮件带附件"); helper.setText("元旦快乐"); //添加附件 1 ClassPathResource file1 = new ClassPathResource("image.JPG"); //把附件加到邮件中:附件文件名,文件对象 helper.addAttachment(file1.getFilename(), file1.getFile()); //添加附件 2:附近的文件名为中文时,需要对文件名进行编码转换,解决乱码问题 ClassPathResource file2 = new ClassPathResource("文档.docx"); //附件的文件名有汉字 helper.addAttachment(MimeUtility.encodeWord(file2.getFilename()), file2.getFile()); mailSender.send(mimeMessage); System.out.println("发送成功"); } catch (Exception e) { e.printStackTrace(); } } }
applicationContext.xml 配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd"> <!-- Spring 实现的发邮件的类 --> <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"> <property name="host" value="smtp.163.com" /><!-- 服务器 --> <property name="port" value="25" /><!-- 端口 --> <property name="username" value="chaoyi77@163.com" /><!-- 用户名 --> <property name="password" value="******" /><!-- 密码 --> <property name="protocol" value="smtp" /><!-- 协议 --> <property name="defaultEncoding" value="utf-8" /><!-- 默认编码 --> <property name="javaMailProperties"> <props> <!-- 设置 SMT 服务器需要用户验证 --> <prop key="mail.smtp.auth">true</prop> </props> </property> </bean> <!-- 简单邮件发送 --> <bean id="mail" class="cn.mail.Mail" p:mailSender-ref="mailSender" /> </beans>
Test 测试类
package cn.test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import cn.mail.Mail; public class Test { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); /*测试简单邮件带附件*/ Mail mail = (Mail) context.getBean("mail"); mail.send(); } }
效果图:
相关推荐
下面是一个示例代码片段,展示了如何使用SpringMail发送带附件的邮件: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.mail.MailException; import org....
关于 Spring Boot 定时任务接收邮件并且存储附件的方法讲解 Spring Boot 是一个基于 Java 的框架,它提供了许多实用的功能,包括定时任务。在 Spring Boot 中实现定时任务非常简单,只需要使用两个注解:`@...
本项目聚焦于使用Spring Boot来开发一个支持多附件邮件发送的微服务平台。这个平台可以方便地集成到各种业务场景中,例如发送报告、通知或者用户验证邮件。 首先,我们需要了解Spring Boot的邮件服务模块——`...
博文链接 "<https://javastudyeye.iteye.com/blog/1396895>" 提供了一个具体的应用示例,展示如何配置Spring邮件服务、创建Velocity模板、以及如何在代码中处理图片和附件,以便在实际项目中参考。 总结,"spring ...
3、Spring Boot 发送邮件(文本格式的邮件、发送HTML格式的邮件、发送带附件 的邮件、发送带静态资源的邮件) 个人觉得Springboot的开发简单的归纳为三步jar包引入,配置,应用。 (一)简单使用 1)JSP的使用...
本例为完整的采用spring 发送带 附件的邮件。 下载后需要改动的地方: 1.在mail.properties中将接收者邮箱地址(username),邮箱密码换成真实的。 2.在SpringJavaMailDemo类中把发送者和接收者邮箱地址换成真实地址...
本实例将详细讲解如何在这三个框架基础上实现一个邮件发送功能,同时支持附件上传。对于Java开发者来说,理解和掌握这个集成过程将有助于提升在实际项目中的应用能力。 首先,Struts2作为MVC框架,主要负责控制层的...
我自己从pro spring书上修改过来的发邮件程序,在配置文件... 此邮件程序还有定时功能,到你定的时刻后它就开始发邮件,发邮件还有个发送周期,即隔多少时间发送一封。 此附件中含有源代码。可以自己修改
总结,使用Spring Mail发送带有附件的HTML邮件是一项常见的任务,特别是当需要支持多个账号时,需要精心设计和配置。通过理解Spring Mail的工作原理和JavaMail API,开发者可以有效地实现代理邮件发送,并确保邮件的...
至此,你已经学会了如何在Spring Boot中使用邮件服务发送普通邮件和带附件的邮件,以及如何设置定时任务。请确保根据实际情况调整配置参数,并处理可能出现的异常情况。通过这些功能,你可以轻松构建出满足各种需求...
首先,让我们来了解如何配置Spring邮件服务。在Spring的配置文件(如`applicationContext.xml`)中,我们需要定义一个`JavaMailSender` bean。这个bean通常会包含SMTP服务器的信息,如主机名、端口号、用户名和密码...
在Spring Boot应用中,发送邮件是一项常见的功能,用于与用户通信、发送通知或者提供服务。本教程将详细讲解如何利用Spring Boot实现四种类型的邮件服务:发送普通文本邮件、HTML邮件、附件邮件以及嵌入图片的邮件。...
而Spring集成邮件服务则是一个常见的需求,特别是对于那些需要发送确认邮件、通知或者报告的应用来说。下面将详细阐述Spring如何与JavaMail API结合,实现邮件服务的集成。 首先,我们需要理解JavaMail API。...
Spring Mail 是一个强大的Java库,用于发送电子邮件,包括带有附件的功能。在Spring框架中,它通过集成JavaMailSender接口提供了一种简洁的方式来处理邮件服务。本文将深入探讨如何使用Spring Mail发送带有附件的...
8. **邮件发送**:Spring框架提供了`JavaMailSender`接口和相关的实现类,可以方便地发送邮件,支持HTML格式、附件等,这对于发送通知或报告非常有用。 在实际开发中,Spring框架的强大功能可以极大地提高开发效率...
在IT行业中,Spring框架是Java开发中的一个关键组件,它提供了丰富的功能,包括但不限于依赖注入、面向切面编程以及各种企业级服务。在"spring各种邮件发送"这个主题中,我们将探讨Spring框架如何帮助开发者实现电子...
Spring的邮件支持是通过JavaMailSender接口实现的,它允许开发者轻松地发送各种类型的邮件,包括HTML、文本或者带有附件的邮件。 在本项目中,结合Struts和Spring,我们可以按照以下步骤实现邮件发送: 1. **配置...