iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >怎么用Spring发送电子邮件
  • 576
分享到

怎么用Spring发送电子邮件

2023-06-06 13:06:53 576人浏览 薄情痞子
摘要

小编给大家分享一下怎么用spring发送电子邮件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Spring基于javax.mail封装了一套用于发送电子邮件的ap

小编给大家分享一下怎么用spring发送电子邮件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Spring基于javax.mail封装了一套用于发送电子邮件的api,位于org.springframework.mail包下,下面将介绍下发送普通文本邮件和基于thymeleaf模版的邮件。

普通邮件

导入javax.mail依赖

<!-- ...... --><!-- 省略Spring依赖 --><dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <version>1.6.2</version></dependency>

Spring配置类

@PropertySource(value="classpath:mail.properties")@Configurationpublic class SprinGConfig {@AutowiredEnvironment environment;@Beanpublic JavaMailSenderImpl javaMailSenderImpl(){JavaMailSenderImpl javaMailSenderImpl = new JavaMailSenderImpl();javaMailSenderImpl.setHost(environment.getProperty("mail.host"));javaMailSenderImpl.setUsername(environment.getProperty("mail.username"));javaMailSenderImpl.setPassword(environment.getProperty("mail.passWord"));javaMailSenderImpl.setDefaultEncoding(environment.getProperty("mail.encoding"));return javaMailSenderImpl;}}

邮件配置:mail.properties

#QQ邮箱发送邮件服务器mail.host=smtp.qq.com#QQ邮箱账户名mail.username=xxxxxx@qq.com#QQ邮箱授权码,开启IMAP/SMTP服务时会生成mail.password=lrorsapyffcwbegg#邮件发送编码mail.encoding=UTF-8

测试

@RunWith(SpringRunner.class)@ContextConfiguration(classes=SpringConfig.class)public class MailTest {@Autowiredprivate JavaMailSenderImpl javaMailSenderImpl;@Testpublic void testSimpleMail() throws MessagingException{MimeMessage message = javaMailSenderImpl.createMimeMessage();//发送带附件和内联元素的邮件需要将第二个参数设置为trueMimeMessageHelper helper = new MimeMessageHelper(message, true);//发送方邮箱,和配置文件中的mail.username要一致helper.setFrom("xxxxxx@qq.com");//接收方helper.setTo("xxxxxx@qq.com");//主题helper.setSubject("邮件测试");//邮件内容helper.setText("<html><body><img src='cid:myphoto'></body></html>", true);//邮件内容内嵌的图片,addInline中的contentId要和邮件内容中的cid相对应FileSystemResource res = new FileSystemResource(new File("e:/yc/1.jpg"));helper.addInline("myphoto", res);//邮件附件FileSystemResource file = new FileSystemResource(new File("e:/yc/myphoto.zip"));helper.addAttachment("myphoto.zip", file);javaMailSenderImpl.send(message);}}

怎么用Spring发送电子邮件

基于thymeleaf模版的邮件

导入thymeleaf-spring依赖

<dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring4</artifactId> <version>3.0.11.RELEASE</version></dependency>

Spring配置类中添加thymeleaf模板配置

@Bean public TemplateEngine emailTemplateEngine() {  SpringTemplateEngine templateEngine = new SpringTemplateEngine();  ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver();  templateResolver.setResolvablePatterns(Collections.singleton("*.html"));  templateResolver.setPrefix("/templates/");  templateResolver.setSuffix(".html");  templateResolver.setTemplateMode(TemplateMode.HTML);  templateResolver.setCharacterEncoding("UTF-8");  templateResolver.setCacheable(false);  templateEngine.addTemplateResolver(templateResolver);  return templateEngine; }

模版文件:/src/main/resources/templates/msg.html

<!DOCTYPE html><html xmlns:th="Http://www.thymeleaf.org"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <style type="text/CSS">span{color:orange}</style> </head> <body> <p>  您好, <span th:text="${name}">xxx</span>,感谢您使用XXX服务,您正在进行邮箱验证,本次请求的验证码为: </p> <p><span th:text="${validCode}">1111</span>(为了保障您帐号的安全性,请在1小时内完成验证。)</p> <p>  XXX团队<br />  2019年06月06日 </p> </body></html>

测试

@Autowiredprivate TemplateEngine emailTemplateEngine;@Testpublic void testTemplateMail() throws MessagingException{MimeMessage message = javaMailSenderImpl.createMimeMessage();MimeMessageHelper helper = new MimeMessageHelper(message, true);helper.setFrom("xxxxxx@qq.com");helper.setTo("xxxxxx@qq.com");helper.setSubject("邮件测试");//thymeleaf模版解析成StringContext ctx = new Context();ctx.setVariable("name", "小姐姐");ctx.setVariable("validCode", "88888888");String htmlContent = emailTemplateEngine.process("msg.html", ctx);helper.setText(htmlContent, true);javaMailSenderImpl.send(message);}

怎么用Spring发送电子邮件

以上是“怎么用Spring发送电子邮件”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 怎么用Spring发送电子邮件

本文链接: https://www.lsjlt.com/news/247174.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么用Spring发送电子邮件
    小编给大家分享一下怎么用Spring发送电子邮件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Spring基于javax.mail封装了一套用于发送电子邮件的AP...
    99+
    2023-06-06
  • python3 发送电子邮件
    使用python3发送电子邮件,我之前在网上找了好几篇文章不论是都不行,最后在网上找到这篇文章了!首先在163邮箱开启授权码记住这个授权密码,我们在python代码里面用的就是这个密码不然会出现这个报错#!/usr/bin/env pyth...
    99+
    2023-01-31
    发送电子邮件
  • SpringBoot实现发送电子邮件
    目录1. 前言1.1 电子邮件发展史1.2 电子邮件原理1.3 电子邮件地址的构成1.4 电子邮件传输协议2. 实现发送电子邮件3. 码农来洞见1. 前言 电子邮件是—种...
    99+
    2022-11-12
  • PHP怎么实现发送电子邮件功能
    这篇文章主要介绍“PHP怎么实现发送电子邮件功能”,在日常操作中,相信很多人在PHP怎么实现发送电子邮件功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP怎么实现发送电子邮件功能”的疑惑有所帮助!接下来...
    99+
    2023-06-04
  • 用 Python 发电子邮件
    本文首发于【红叶枫啦】微信公号,未经允许,不得转载。 这个程序涉及两个库:smtplib 和 email。 这两个库都是Python自带的,所以不需要额外的下载安装,此外,这次使用的Python版本为2.7。 总体思路很简...
    99+
    2023-01-31
    电子邮件 Python
  • 怎样使用JavaScript直接从前端发送电子邮件
    怎样使用JavaScript直接从前端发送电子邮件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。你不需要使用任何后端语言,如 PHP 或 ...
    99+
    2022-10-19
  • 如何利用yii 2框架发送电子邮件
    小编给大家分享一下如何利用yii 2框架发送电子邮件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!利用yii 2框架发送电子邮件,具体步骤如下所示:config/...
    99+
    2023-06-06
  • 如何使用asp.net c#向outlook发送电子邮件
    您可以使用以下代码片段来使用ASP.NET C#向Outlook发送电子邮件:```csharpusing Microsoft.Of...
    99+
    2023-09-27
    ASP.NET
  • PHP 使用ThinkPHP实现电子邮件发送示例
    文章目录 首先我们需要设置我们的邮箱客户端授权,获取到授权码找到我们的邮箱设置去账号中找到这一堆服务,找到后开启smtp服务开启服务后管理服务 接下来需要去下载相应的第三方类库(我这里使用...
    99+
    2023-09-01
    php 开发语言
  • 在Windows中如何创建电子邮件别名发送邮件
    第1步 打开Windows Mail和点击“工具”命令。点击“电子邮件地址要使用到的地址框中,点击“确定”,然后点击“关闭”以完成。 ...
    99+
    2023-05-31
    Windows 电子邮件别名 发送邮件 邮件 电子邮件
  • 怎么用Linux命令行发电子邮件
    小编给大家分享一下怎么用Linux命令行发电子邮件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Linux 提供了几个可以让你通过终端发送电子邮件的命令,下面来展...
    99+
    2023-06-16
  • Linux下发送电子邮件的命令有哪些
    本篇内容主要讲解“Linux下发送电子邮件的命令有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux下发送电子邮件的命令有哪些”吧!今天的文章里我们会讲到一些使用Linux命令行工具来...
    99+
    2023-06-13
  • Django应用程序中如何发送电子邮件详解
    前言 在Django应用程序中发送电子邮件最常见的用例是密码重置、帐户激活和发送与您的应用程序相关的一般通知。下面来看看详细的介绍吧。 配置Django发送电子邮件 要配置您的Django应用程序,添加下面...
    99+
    2022-06-04
    详解 应用程序 发送电子邮件
  • 如何在 vb.net 中发送带有附件的电子邮件
    在 VB.NET 中,你可以使用 `System.Net.Mail` 命名空间中的 `MailMessage` 类来创建和发送带附件...
    99+
    2023-09-26
    vb.net
  • 怎么用html发送邮件
    这篇“怎么用html发送邮件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一...
    99+
    2022-10-19
  • 怎么用Python发送邮件
    本篇内容主要讲解“怎么用Python发送邮件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python发送邮件”吧!Python使用SMTP发送邮件SMTP(Simple Mail Tra...
    99+
    2023-06-04
  • EmailJS:5步使用JavaScript直接从前端发送电子邮件
    使用EmailJS可以简化从前端发送电子邮件的过程。以下是在JavaScript中使用EmailJS的5个简单步骤:1. 注册并设置...
    99+
    2023-09-22
    Java
  • Python使用smtplib模块发送电子邮件的流程详解
    1、登录SMTP服务器 首先使用网上的方法(这里使用163邮箱,smtp.163.com是smtp服务器地址,25为端口号): import smtplib server = smtplib.SMTP(...
    99+
    2022-06-04
    详解 模块 发送电子邮件
  • 如何用自定义函数进行Python发送电子邮件
    这篇文章给大家介绍如何用自定义函数进行Python发送电子邮件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。大概是在一个多月前,有个朋友问我如何使用Python发送邮件,说心里话这方面的操作在我之前的工作履历中真的没有...
    99+
    2023-06-02
  • 详解Python如何实现发送带附件的电子邮件
    Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件...
    99+
    2023-05-15
    Python发送带附件邮件 Python发送邮件 Python 邮件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作