使用springboot发送Email
前言
在实际项目中,经常需要用到邮件通知功能。比如,用户通过邮件注册,通过邮件找回密码等;又比如通过邮件发送系统情况,通过邮件发送报表信息等等,实际应用场景很多。(但一般都是使用手机验证码🙂)
这篇文章,就教大家通过 springboot
快速的实现一个发送邮件的功能。
开启 smtp
这里以 QQ 邮箱为例。登录 QQ 邮箱之后,点击设置,点击账户。如下图
点击开启 IMAP/SMTP
服务。
开启之后,记下 QQ 邮箱提示的授权码
这个授权码,就是发送邮件时需要的密码。以上步骤完成之后,就可以开始开发了。
引入依赖
创建 springboot 项目就不需要讲了叭
在 springboot 项目中,引入如下依赖
1 | <dependency> |
配置文件
在 springboot 项目中引入依赖之后,即可在其配置文件中配置邮箱的参数
1 | spring: |
因为是 QQ 邮箱,所以 host
填写 smtp.qq.com
。如果是其它邮箱的话,请 点击 查看对应的 smtp
地址
username
为邮箱账号,password
为上面步骤中提到的授权码,并不是你的 QQ 密码
注入 JavaMailSender 实例
邮箱参数配置完之后,即可直接注入 JavaMailSender 实例
1 |
|
发送普通邮件
普通邮件,没有样式。实现起来最容易
1 | /** |
From
需要和配置文件中的username
一致,否则会报错。To
为邮件接收者;Subject
为邮件的标题;Text
为邮件的内容。
运行方法,即可收到邮件
发送HTML邮件
很多时候,我们需要邮件带有美观的样式。这时候,可以使用HTML的样式。我们需要使用 javaMailSender
的 createMimeMessage
方法,构建一个 MimeMessage
,然后使用 MimeMessage
实例创建出 MimeMessageHelper
。如下
1 |
|
这里需要注意的是,setText
的时候需要传一个布尔值
进去,表明 需要使用HTML样式。
可以看到,h1 的样式已经出来了。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小嘉的部落格!
评论