所需要的核心包:
1.activation.jar ----这个包是JAF框架中的
2.mail.jar
3.spring2.5.6.jar
注意:用spring发送邮件时可以向新浪邮箱发邮件
bean的配置文件内容设置:applicationContextMailSender.xml
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host">
<value>smtp.qq.com</value>
</property>
<property name="username">
<value>邮箱名</value>
</property>
<property name="password">
<value>邮箱名密码</value>
</property>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<!-- 设置超时吧 -->
<prop key="mail.smtp.timeout">2500</prop>
</props>
</property>
</bean>
下面是测试类:Test.java
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
//测试一个简单的送邮件 的方法
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
//ApplicationContext ctx = new FileSystemXmlApplicationContext("D:/28-svn-bak/SpringMail/src/applicationContextMailSender.xml");
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContextMailSender.xml");
MailSender sender = (MailSender)ctx.getBean("mailSender");
SimpleMailMessage smm = new SimpleMailMessage();
smm.setTo("收件人的邮件");//text@qq.com
smm.setFrom("发件人的邮件");
smm.setSubject("你好啊发發發發");
smm.setText("你好啊啊职");
sender.send(smm);
}
}
下面是spring邮件的简述:
###spring邮件抽象层的主要包为 org.springframework.mail。它包括发送电子邮件的主要接口MailSender,还有一个简单邮件信息
的实现类SimpleMailMessage。以及基于MailException的异常继承树。为了使用javaMial中的MimeMessage,Spring另外提供一个
JavaMailSender接口,以及支持MimeMessage的回调接口MimeMessagePreparator。
###基本上,这三个类代表了Spring邮件抽象层的心。MailSender提拱简单的邮件发送方法,面JavaMailSender则可用于发送MimeMessage信息
,MimeMessagePreparator回调接口用于创建MimeMessage实例。
上面三个接口的源码:
1.MailSender ----interface
import org.springframework.mail.MailException;
import org.springframework.mail.SimpleMailMessage;
public interface MailSender {
/**
* 发送简单信息
* @param simpleMessage 需要发送的信息
* @throws MailException 认证失败或发送失败时抛出异常
*/
public void send(SimpleMailMessage simpleMessage) throws MailException;
/**
* 一次发送多条简单信息,发达以数组式组织的多条信息
* @param simpleMessages 需发送的简单信息数组
* @throws MailException 认证失败或发送失败时抛出异常
*/
public void send(SimpleMailMessage[] simpleMessages) throws MailException;
}
2.JavaMailSender -----interface
import javax.mail.internet.MimeMessage;
import org.springframework.mail.MailException;
import org.springframework.mail.javamail.MimeMessagePreparator;
//这个是发送复杂邮件的接口
public interface JavaMailSender extends MailSender {
//主要是用到MimeMessage这个封装内容
public MimeMessage createMimeMessage();
public void send(MimeMessage mimeMessage) throws MailException;
public void send(MimeMessage[] mimeMessages) throws MailException;
//这个是要进行自己扩展的方法(下面的那个接口 3)
public void send(MimeMessagePreparator mimeMessagePreparator) throws MailException;
public void send(MimeMessagePreparator[] mimeMessagePreparators) throws MailException;
}
3.MimeMessagePreparator-----interface
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
//这个是给自己设置邮件信息封装的类
public interface MimeMessagePreparator {
//要实现这个方法
void prepare(MimeMessage mimeMessage) throws MessagingException;
}
分享到:
相关推荐
我们封装一个 MailService 类来实现普通的邮件发送方法。 Spring Boot整合邮件发送并保存历史发送邮箱 from,即为邮件发送者; to,邮件接收者; subject,邮件主题; content,邮件的主体。 邮件发送者 from ...
这个项目"struts spring 实现简单的邮件发送"旨在展示如何整合这两个框架来完成邮件发送的功能。 首先,Struts是Apache组织的一个开源项目,它提供了一种模型驱动的方式来构建动态Web应用程序。Struts框架通过控制...
以上就是一个基本的Spring Boot整合Mail实现简单邮件发送的示例。通过这个示例,你可以了解到Spring Boot如何通过自动配置简化邮件服务的集成,以及如何使用JavaMailSender接口发送邮件。当然,实际应用中可能需要...
在IT行业中,Spring框架是Java开发中的一个关键组件,它提供了丰富的...对于那些需要发送大量或定期邮件的应用,还可以考虑使用邮件队列服务,如Amazon SES或SendGrid,配合Spring进行集成,实现高效、可靠的邮件发送。
在示例中,邮件发送部分使用了Apache Commons Email库,这是一个Java邮件发送库,简化了构建和发送电子邮件的过程。`SimpleEmail`类是该库中的核心类,用于设置邮件的各种属性,如发件人、收件人、主题、内容等。在`...
而Spring集成邮件服务则是一个常见的需求,特别是对于那些需要发送确认邮件、通知或者报告的应用来说。下面将详细阐述Spring如何与JavaMail API结合,实现邮件服务的集成。 首先,我们需要理解JavaMail API。...
Spring Mail是Spring Framework的一个扩展模块,它提供了与JavaMail API的简单集成,用于发送电子邮件。在某些企业环境中,由于网络安全策略,直接访问互联网可能被禁止,这时就需要通过HTTP或SOCKS代理来发送邮件。...
当我们需要在Spring应用中实现邮件发送功能时,通常会整合Spring与JavaMail。下面将详细讲解如何利用Spring整合JavaMail发送QQ邮件。 首先,我们需要在项目中引入JavaMail的相关依赖。在Maven项目中,可以在pom.xml...
接下来,我们可以创建一个服务类来处理邮件发送的具体逻辑,使用`JavaMailSender`发送邮件: ```java @Service public class EmailService { @Autowired private JavaMailSender mailSender; public void ...
以下是一个简单的示例: ```java @Service public class MailServiceImpl implements MailService { @Autowired private JavaMailSender javaMailSender; public void sendEmailWithAttachments(String to, ...
总的来说,Spring、Freemarker和JavaMail的整合为我们提供了一种强大而灵活的邮件发送机制,能够满足各种复杂的邮件需求。通过熟练掌握这些技术,开发者可以在企业级应用中构建出高效、稳定且用户体验良好的邮件系统...
下面是一个简单的示例: ```java import org.springframework.beans.factory.annotation.Autowired; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail....
以下是一个简单的示例: ```java @Service public class EmailService { @Autowired private JavaMailSender emailSender; public void sendSimpleEmail(String to, String subject, String text) { ...
总的来说,Spring邮件服务提供了一种便捷的方式,让我们能够轻松地在Java应用中集成邮件发送功能。通过配置文件设置邮件服务器信息,然后通过工具类调用相应的API,我们可以实现复杂邮件的发送,包括多附件、多收件...
Spring框架在Java应用开发中扮演着重要角色,尤其在处理各种集成任务时,如数据库操作、定时任务以及我们的关注点——邮件发送。Spring提供了一套完整的邮件服务支持,通过其`org.springframework.mail`包,我们可以...
总之,这个实例结合了Struts2、Spring和Mybatis的强大功能,提供了一个完整的邮件发送系统,包括邮件的创建、附件上传和数据库操作。对这个实例的学习和实践,可以帮助开发者深入理解Java企业级应用的开发流程和技巧...