Spring实现邮件发送功能

这篇文章主要为大家详细介绍了Spring实现邮件发送功能,简单的发送邮件工具JavaMailSender使用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

前言:以前都是直接用Java自带的邮件工具发送邮件,现在Spring帮我们做了封装,提供了更好用更简单的发送邮件工具JavaMailSender,关于邮件服务器的设置就不在这里说了,直接去QQ邮箱设置下就好,下面看下主要的步骤: 

步骤一、添加发送邮件相关Maven依赖

  org.springframeworkspring-context-support4.3.2.RELEASE javax.mailmail1.4.7

步骤二、添加相关Spring配置,创建一个spring-mail.xml(如果是Spring-Boot请无视),内容如下:

      true25000

步骤三、创建具体的邮件发送工具类

 /** * 基于Spring的JavaMailSender的邮件发送工具类 * @author simon * */ @Component public class EmailSender { @Autowired private JavaMailSender javaMailSender; private static EmailSender emailSender; @PostConstruct public void init() { emailSender = this; emailSender.javaMailSender= this.javaMailSender; } /** * 发送简单的文本邮件 * @param sendTo    收件人组 * @param subject    主题 * @param content    文本内容 */ public static void sendSimpleMessage(String sendFrom, String[] sendTo, String subject, String textcontent) { SimpleMailMessage mail = new SimpleMailMessage(); mail.setFrom(sendFrom); mail.setTo(sendTo); mail.setSubject(subject); mail.setText(textcontent); //发送 emailSender.javaMailSender.send(mail); } /** * 发送HTML内容格式的邮件 * @param sendFrom * @param sendTo      收件人组 * @param subject      主题 * @param htmlContent    HTML内容 * @throws Exception */ public static void sendHtmlMessage(String sendFrom, String[] sendTo, String subject, String htmlContent) throws Exception { MimeMessage mimeMessage = emailSender.javaMailSender.createMimeMessage(); MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage); mimeMessageHelper.setFrom(sendFrom); mimeMessageHelper.setTo(sendTo); mimeMessageHelper.setSubject(subject); // true 表示启动HTML格式的邮件 mimeMessageHelper.setText(htmlContent, true); // 发送邮件 emailSender.javaMailSender.send(mimeMessage); } } 

步骤四、创建单元测试测试发送邮件

 /** * 邮件发送测试类 * * @author simon * */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:applicationContext.xml") public class EmailSenderTest { @Test public void testSend() throws Exception { String sendFrom = "1317492210@qq.com"; String[] sendTo = {"zhaosheng@hitencent.com"}; String subject = "Spring自带JavaMailSender发送的HTML邮件"; StringBuilder htmlContent = new StringBuilder() .append("") .append("") .append("") .append("Spring自带JavaMailSender发送的HTML邮件") .append("") .append("") .append("") .append("您好!陌生人

") .append("") .append(""); EmailSender.sendHtmlMessage(sendFrom, sendTo, subject, htmlContent.toString()); System.out.println("邮件发送成功."); }

OK,到这里全部的步骤就结束了,是不是比Java Mail简单方便很多哉,赶紧自己动手试试吧!

以上就是Spring实现邮件发送功能的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Java