1.所需的Jar包: Spring.jar log4jXXX.jar commons-logging.jar 以上是spring所需要的Jar包。 freemarker.jar 这个是使用模版必须的Jar包。 mail.jar activation.jar 这两个是java mail需要的Jar包。 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:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd "> <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"> <property name="host" value="smtp.qq.com"></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="297423093@qq.com" /> <property name="password" value="XXX" /> </bean> </beans> 发送程序(SpringMail.java): import java.io.StringWriter; import java.util.HashMap; import java.util.Map; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.context.support.FileSystemXmlApplicationContext; import org.springframework.core.io.ClassPathResource; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import freemarker.template.Configuration; import freemarker.template.Template; public class SpringMail { private Configuration cfg = new Configuration(); public static void main(String[] args) throws Exception { SpringMail springMail = new SpringMail(); // springMail.sendMailWithAnnex(); springMail.sendMail(); } private void sendMail() throws Exception { ApplicationContext ctx = new FileSystemXmlApplicationContext( "src/applicationContext.xml"); JavaMailSender sender = (JavaMailSender) ctx.getBean("mailSender"); SimpleMailMessage mail = new SimpleMailMessage(); mail.setTo("qincidong@163.com"); //接收人 mail.setFrom("021507880@qq.com"); //发送人 mail.setSubject("这是一个Spring发送邮件的例子"); //嵌入ftl模版 cfg.setClassForTemplateLoading(getClass(), "/mail"); Map root = new HashMap(); root.put("username", "李波"); //模板变量 Template t = cfg.getTemplate("notify-mail.ftl"); StringWriter writer = new StringWriter(); t.process(root, writer); //把模版内容写入邮件中 mail.setText(writer.toString()); sender.send(mail); System.out.println("邮件发送成功!"); } // 带附件 public void sendMailWithAnnex() throws Exception { // TODO Auto-generated method stub ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); JavaMailSender mailSender= (JavaMailSender) context.getBean("mailSender"); MimeMessage mime = mailSender.createMimeMessage(); MimeMessageHelper helper; try { helper = new MimeMessageHelper(mime,true,"utf-8"); helper.setFrom("qincidong@qq.com"); helper.setTo("qincidong@163.com"); helper.setSubject(" 测试spring Mail的附件功能"); //需要将附件显示在html中 //在标签中用cid:xx 标记,使用helper.addInline()方法添加 helper.setText("<html><body>javaeye是个好网站:<br>"+ "<a href='http://www.javaeye.com'>" + "<img src='cid:logo'></a></body></html>",true); helper.addInline("logo", new ClassPathResource("logo.gif")); helper.addAttachment("javaeye.gif", new ClassPathResource("javaeye.gif")); } catch (MessagingException e) { // TODO Auto-generated catch block e.printStackTrace(); } mailSender.send(mime); System.out.println("带附件的邮件发送成功!"); } } notify-mail.ftl: <body> 欢迎加入! 亲爱的${username} 请点击链接完成注册: <a href='http://www.javaeye.com'>http://www.javaeye.com</a> 如果您的email程序不支持链接点击,请将上面的地址拷贝至您的浏览器(如IE)的地址栏进入****。 您可以在***: 查看最新的影视资料,查看各种相关消费产品,在这里交友,灌水……; 希望您在**度过快乐的时光! - (这是一封自动产生的email,请勿回复。) </body>
相关推荐
在本项目中,我们将深入探讨如何使用SpringMail发送带有附件的电子邮件。首先,我们需要了解几个核心概念: 1. **JavaMail API**: 这是Java平台上的一个标准API,用于处理邮件相关任务,如创建、发送和接收邮件。它...
首先,要使用Spring Mail发送邮件,你需要在Spring配置文件中配置JavaMailSender。这通常涉及到以下几个关键属性的设置: 1. `host`:SMTP服务器的地址。 2. `port`:SMTP服务器的端口号。 3. `protocol`:默认为...
使用Spring mail发送邮件的完整实例,包含代码与Spring mail的jar,可直接运行与使用。相关学习文档参考博客《Spring Mail邮件发送 http://blog.csdn.net/chenxiang0207/article/details/8256528》。
本篇将深入探讨如何使用Spring Mail发送邮件,以及它背后的实现原理。 首先,我们需要在项目中引入Spring Mail的依赖。通常,这可以通过Maven或Gradle来完成。对于Maven用户,可以在pom.xml文件中添加以下依赖: `...
和上面对比,这次发送邮件使用 MimeMessageHelper 类。MimeMessageHelper 支持发送复杂邮件模板,支持文本、附件、HTML、图片等,接下来我们会继续使用。 (3)发送带附件的邮件 在 MailService 添加 ...
### Spring Mail 发送邮件实例详解 #### 一、Spring Mail 概述 Spring Mail 是 Spring 框架中用于处理电子邮件发送的一个模块。它提供了一种简单的方式来进行邮件的发送,支持多种邮件发送协议,例如 SMTP 等,...
三、使用Spring Mail发送邮件 1. 创建JavaMailSender实例:通过Spring的依赖注入获取`JavaMailSender`对象。 2. 创建Message:使用`SimpleMailMessage`或`MimeMessage`创建邮件对象,设置收件人、抄送人、主题、正文...
在`springmail2`这个示例项目中,可能包含了一个简单的Spring Boot应用,演示了如何使用Spring Mail发送邮件。这个示例可能包括一个`Main`类,启动Spring Boot应用,并调用`MailService`发送一封测试邮件。代码可能...
SpringMail是Spring框架的一个扩展,它为Java应用提供了一个简单且强大的邮件发送功能。通过集成SpringMail,开发者可以轻松地在应用程序中实现电子邮件的发送,无论是普通的文本邮件、HTML格式的邮件,还是带有附件...
在Spring中,发送电子邮件的功能是通过Spring的Mail API实现的,这在系统监控、报警通知、用户验证等场景中非常常见。下面将详细介绍如何使用Spring发送邮件。 首先,我们需要在项目中引入Spring的邮件支持。这通常...
Spring Mail是一个Java库,它简化了通过JavaMail API发送电子邮件的过程。本教程将详细讲解如何利用Spring Mail通过Gmail的SSL(安全套接层)协议来发送邮件。 首先,我们需要在项目中引入Spring Mail的依赖。如果...
本文将详细讲解如何利用Spring Mail发送HTML格式的邮件,以及如何发送普通文本、附件和嵌入式图片等内容。 首先,我们需要在项目中引入Spring Mail的相关依赖。在Maven项目中,可以在pom.xml文件中添加以下依赖: ...
Spring框架提供了一种优雅的方式来处理这个任务,它整合了JavaMailSender接口和JavaMail API,使得在Java应用程序中发送邮件变得更加简单。让我们深入探讨这个主题。 首先,JavaMail API是Java用来处理邮件收发的...
至此,你已经了解了如何使用Spring Mail发送简单的文本邮件、HTML邮件以及包含附件的邮件。通过这种方式,你可以轻松地在你的应用中集成邮件功能,无论是发送注册验证邮件、系统通知还是其他类型的通信。记得在实际...
通过这个Demo,你可以了解到如何配置邮件服务器、如何使用Freemarker模板生成动态邮件内容,以及如何利用Spring的`JavaMailSender`接口发送邮件。这只是一个基础的实现,你还可以根据需要扩展功能,比如支持附件、...
在本话题中,我们将探讨“Spring高效批量邮件发送”这一技术点,这通常涉及到Spring框架中的邮件服务模块以及如何优化邮件发送的效率。 首先,Spring框架的MailSender接口是处理邮件发送的核心组件。它提供了send()...