在实际项目中,经常需要用到邮件通知功能。比如,用户通过邮件注册,通过邮件找回密码等;又比如通过邮件发送系统情况,通过邮件发送报表信息等等,实际应用场景很多。
正常我们会用 JavaMail 相关 api 来写发送邮件的相关代码,但现在 SpringBoot 提供了一套更简易使用的封装。这篇文章,阿粉就带大家通过 SpringBoot 快速的实现发送邮件的功能。
1、开启smtp
这里以 163 邮箱为例。登录 163 邮箱之后,点击设置,如下图:
1.1、登录邮箱-设置 获取 spring.mail.password
授权码:
1.2、开启IMAP/SMTP服务,根据提示走获取授权码
这个授权码,就是发送邮件时需要的密码。
1.3、下方有服务地址SMTP服务器:smtp.163.com就是我们要的
以上步骤完成之后,就可以开始开发了。
2、新建 maven 项目
3、 pom
文件中所涉及的依赖包
导入 SpringBoot 父依赖版本为 2.02
<parent>
导入 web
和 mail
邮件相关依赖包
<dependency>
4、配置文件
配置文件中参数的获取,最后介绍。
server:
5、发送类实现
Spring Email 抽象的核心是 MailSender 接口,MailSender 的实现能够把 Email 发送给邮件服务器,由邮件服务器实现邮件发送的功能。
Spring 自带了一个 MailSender 的实现 JavaMailSenderImpl
,它会使用 JavaMail API
来发送 Email。后来 spring 推出 JavaMailSender 进一步简化邮件发送的过程,然后 SpringBoot
对此进行了封装,就有了 现在的 spring-boot-starter-mail
。
接下来,阿粉和大家一起通过实例看看如何在 SpringBoot 中使用 JavaMailSenderImpl
发送邮件。
简单消息邮件:
@Resource
复杂消息邮件:
@Resource
6、 Controller
类
@RestController
7、测试
7.1、简单邮件
利用 postman 发送请求:
查看邮箱结果:
7.2、复杂邮件
利用 postman 发送请求:
查看邮箱结果:
从结果可以看出,我们设置的 <b style='color:red'>账号激活,请点击我</b>
字体样式已经展示出效果了!
参考 :https://www.cnblogs.com/jmcui/p/9758442.html
< END >
如果大家喜欢我们的文章,欢迎大家转发,点击在看让更多的人看到。也欢迎大家热爱技术和学习的朋友加入的我们的知识星球当中,我们共同成长,进步。
本文分享自微信公众号 - Java极客技术(Javageektech)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。