SpringBoot2.x 整合 邮件发送

Stella981
• 阅读 633

SpringBoot2.x 整合 邮件发送

在实际项目中,经常需要用到邮件通知功能。比如,用户通过邮件注册,通过邮件找回密码等;又比如通过邮件发送系统情况,通过邮件发送报表信息等等,实际应用场景很多。

正常我们会用 JavaMail 相关 api 来写发送邮件的相关代码,但现在 SpringBoot 提供了一套更简易使用的封装。这篇文章,阿粉就带大家通过 SpringBoot 快速的实现发送邮件的功能。

1、开启smtp

这里以 163 邮箱为例。登录 163 邮箱之后,点击设置,如下图:

1.1、登录邮箱-设置 获取 spring.mail.password 授权码:

SpringBoot2.x 整合 邮件发送

1.2、开启IMAP/SMTP服务,根据提示走获取授权码

SpringBoot2.x 整合 邮件发送

SpringBoot2.x 整合 邮件发送

这个授权码,就是发送邮件时需要的密码。

1.3、下方有服务地址SMTP服务器:smtp.163.com就是我们要的

SpringBoot2.x 整合 邮件发送

以上步骤完成之后,就可以开始开发了。

2、新建 maven 项目

SpringBoot2.x 整合 邮件发送

3、 pom 文件中所涉及的依赖包

导入 SpringBoot 父依赖版本为 2.02

<parent>

导入 web 和 mail 邮件相关依赖包

<dependency>

4、配置文件

配置文件中参数的获取,最后介绍。

server:

5、发送类实现

Spring Email 抽象的核心是 MailSender 接口,MailSender 的实现能够把 Email 发送给邮件服务器,由邮件服务器实现邮件发送的功能。

SpringBoot2.x 整合 邮件发送

Spring 自带了一个 MailSender 的实现 JavaMailSenderImpl,它会使用 JavaMail API 来发送 Email。后来 spring 推出 JavaMailSender 进一步简化邮件发送的过程,然后 SpringBoot 对此进行了封装,就有了 现在的 spring-boot-starter-mail

接下来,阿粉和大家一起通过实例看看如何在 SpringBoot 中使用 JavaMailSenderImpl 发送邮件。

简单消息邮件

@Resource

复杂消息邮件

@Resource

6、 Controller 类

@RestController

7、测试

7.1、简单邮件

利用 postman 发送请求:

SpringBoot2.x 整合 邮件发送

查看邮箱结果:

SpringBoot2.x 整合 邮件发送

7.2、复杂邮件

利用 postman 发送请求:

SpringBoot2.x 整合 邮件发送

查看邮箱结果:

SpringBoot2.x 整合 邮件发送

从结果可以看出,我们设置的 <b style='color:red'>账号激活,请点击我</b>字体样式已经展示出效果了!

参考 :https://www.cnblogs.com/jmcui/p/9758442.html

< END >

如果大家喜欢我们的文章,欢迎大家转发,点击在看让更多的人看到。也欢迎大家热爱技术和学习的朋友加入的我们的知识星球当中,我们共同成长,进步。

SpringBoot2.x 整合 邮件发送

本文分享自微信公众号 - Java极客技术(Javageektech)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Easter79 Easter79
3年前
sprintboot
一、邮件发送使用springboot自带的邮件系统就能实现邮件的发送,首先导入依赖:1、新建springboot项目,添加依赖<dependency<groupIdorg.springframework.boot</groupId<artifactIdspringbootstartermail
Karen110 Karen110
3年前
赶在元旦前夕!10分钟用Python批量定制化发送元旦祝福邮件!
上一篇关于邮件的自动发送教程中,我们讲解了如何使用yagmail进行简单的邮件发送:现实生活中,如果只是发邮件给自己,像上一篇文章那样简陋的格式是可以接受的,但若要针对每个人进行邮件的定制化,群发给公司客户、内部员工、亲戚朋友,则需更加高级的邮件发送方式。我们可以通过HTML制作一封精美的元旦祝福邮件,但是邮件的内容——比如姓名、祝福语等应该怎样动态
徐小夕 徐小夕
3年前
如何使用nodejs自动发送邮件?
之前用Nodejs做了很多服务端模块,最近抽空复盘一下,接下来笔者将介绍如何使用Nodejs来自动向用户发送邮件.笔者将详细介绍自动发送邮箱的实现方案,以及通过一个实际的案例来带大家掌握使用nodejs自动发送邮件,最后会介绍一些实际的应用场景,来加深对该方案的理解,达到学以致用的目的.实现方案实现自动发送邮件笔者采用了基于Nod
Easter79 Easter79
3年前
SpringBoot入门 (十) 发送邮件
本文记录学习在SpringBoot中发送邮件。一邮件发送过程发送邮件是一个我们在项目中经常会用到的功能,如在用户注册时发送验证码,账户激活等都会用到。完整的一个邮件发送过程主要包含以下几个步骤:1发件人在用户邮件代理上写邮件内容及收件人的邮箱地址;2用户邮件代理根据发件人填写的邮件信息,生成一封符合邮件格式的邮件;
Stella981 Stella981
3年前
Jenkins 配置邮件通知步骤
Jenkins配置邮件通知前言可以在Jenkins中配置邮件通知,比如在构建失败时发送邮件通知项目组来及时修复问题。Jenkins邮件通知功能的插件主要包括:MailerPlugin(默认的发送邮件插件)EmailExtensionPlugin(功能更强大的发送邮件插件)建议同时安装这两个插件。下面来介绍如何在
Wesley13 Wesley13
3年前
thinkphp整合系列之友盟消息推送
上篇文章 thinkphp集成系列之phpmailer批量发送邮件(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fbaijunyao.com%2Farticle%2F69)讲过的;邮件有着零成本、内容丰富的优点;但是一个非常硬的硬伤;这家伙的及时性太差了;尤其是随着90、00
Stella981 Stella981
3年前
SpringBoot入门 (十) 发送邮件
本文记录学习在SpringBoot中发送邮件。一邮件发送过程发送邮件是一个我们在项目中经常会用到的功能,如在用户注册时发送验证码,账户激活等都会用到。完整的一个邮件发送过程主要包含以下几个步骤:1发件人在用户邮件代理上写邮件内容及收件人的邮箱地址;2用户邮件代理根据发件人填写的邮件信息,生成一封符合邮件格式的邮件;
Easter79 Easter79
3年前
SpringBoot2.x 整合 邮件发送
!(https://oscimg.oschina.net/oscnet/d6e10fb8d30306d7aac7b25d9af5f79c9a6.png)在实际项目中,经常需要用到邮件通知功能。比如,用户通过邮件注册,通过邮件找回密码等;又比如通过邮件发送系统情况,通过邮件发送报表信息等等,实际应用场景很多。正常我们会用J
Stella981 Stella981
3年前
Azure 上通过 SendGrid 发送邮件
SendGrid是什么?SendGrid是架构在云端的电子邮件服务,它能提供基于事务的可靠的电子邮件传递。并且具有可扩充性和实时分析的能力。常见的用例有:自动回复用户的邮件定期发送信息给用户生成报表等由于使用SendGrid这样的第三方邮件服务既稳定可靠又不用自己维护邮件服务器,