spring boot 发送邮件

本文详细介绍了在Spring Boot中使用JavaMailSender发送邮件的步骤,包括配置依赖、设置属性、发送简单邮件、添加附件、嵌入静态资源以及使用模板邮件。通过实例代码展示了如何实现各种邮件功能。
摘要由CSDN通过智能技术生成

Spring提供了非常好用的JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。下面通过实例看看如何在Spring Boot中使用JavaMailSender发送邮件。


快速入门:

 那么如何进行使用呢?很简单最核心的就两个步骤:

在Spring Boot的工程中的pom.xml中引入spring-boot-starter-mail依赖:

1
2
3
4
5
<!-- 发送邮件. -->
< dependency
     < groupId >org.springframework.boot</ groupId >
     < artifactId >spring-boot-starter-mail</ artifactId >
</ dependency >

如其他自动化配置模块一样,在完成了依赖引入之后,只需要在application.properties中配置相应的属性内容。


下面我们以QQ邮箱为例,在application.properties中加入如下配置(注意替换自己的用户名和密码):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
########################################################
###mail setting
########################################################
# 设置邮箱主机
spring.mail.host=smtp.qq.com
# 设置用户名
spring.mail.username=用户名
# 设置密码
spring.mail.password=密码
# 设置是否需要认证,如果为 true ,那么用户名和密码就必须的,
#如果设置 false ,可以不设置用户名和密码,当然也得看你的对接的平台是否支持无密码进行访问的。
spring.mail.properties.mail.smtp.auth= true
# STARTTLS[ 1 ]  是对纯文本通信协议的扩展。它提供一种方式将纯文本连接升级为加密连接(TLS或SSL),而不是另外使用一个端口作加密通信。
spring.mail.properties.mail.smtp.starttls.enable= true
spring.mail.properties.mail.smtp.starttls.required= true

接下来我们通过单元测试来测试简单邮件的发送:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package  com.kfit;
import  org.junit.Test;
import  org.junit.runner.RunWith;
import  org.springframework.beans.factory.annotation.Autowired;
import  org.springframework.boot.test.SpringApplicationConfiguration;
import  org.springframework.mail.SimpleMailMessage;
import  org.springframework.mail.javamail.JavaMailSender;
import  org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  
/**
  *
  *
  * @version v.0.1
  */
@RunWith (SpringJUnit4ClassRunner. class )
@SpringApplicationConfiguration (classes = App. class )
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值