SpringBoot加email服务,你说有没有搞头?
「这是我参与11月更文挑战的第22天,活动详情查看:2021最后一次更文挑战」
- 开启邮箱POP3/SMTP服务
登录qq邮箱后,点击左上方的设置,选择账户,如下图。
然后一直往下滑,看到如下图的POP3/SMTP服务,点击开启,会让帮定的密保手机号发个[短信]到指定号码,然后会收到一个授权码,这个授权码在appliction.properties配置中会用到,一定要好好保存
,开启后如下图
- springboot项目添加依赖
创建springboot项目,添加email依赖
1 | xml复制代码<dependency> |
我的依赖如下:
1 | xml复制代码<dependencies> |
- 配置文件
1 | properties复制代码######qq邮箱######## |
- 邮件服务操作类
springboot引用模块都通常都提供一个xxxTmplate,方便我们开发,我们可以封装一个EmailTmplate
1 | java复制代码package com.ljw.task.config; |
- 测试类
1 | java复制代码package com.ljw.task.config; |
发送模板邮件用到的模板类:helloTemplate.html
helloTemplate.html:
1 | java复制代码<!DOCTYPE html> |
发送附件用到的图片:avatar.jpg
avatar.jpg:
这里就不贴测试发送邮件的截图,发送人和接收人换成自己邮箱,自己测试下就行。
- 常用业务分析
- 用户注册后需要激活账号才能使用的场景:
用户注册成功,保存数据到redis,设置过期时间,并发送邮件信息到指定邮箱,该邮件含有用户唯一标识的key的超链接,用户点击该超链接则回访到我们的激活接口,验证信息正确则激活。如在设定时间内没有点击激活则激活失败。
- 其他需要通知的场景
本文转载自: 掘金