首先快速创建一个springBoot项目
pom依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
本文以qq邮箱
发送为例
申请qq邮箱授权码(不是qq邮箱的另行处理)
首先去申请 qq邮箱发送邮件的授权码
QQ邮箱->设置->账户->POP3/SMTP服务:开启服务后会获得QQ的授权码
配置邮件参数
打开application.properties
文件配置email参数
spring.mail.host=smtp.qq.com
spring.mail.username=492782442@qq.com
#有的是邮箱密码,有的是授权码
spring.mail.password=xxx
#设置是否需要认证,默认大部分都是为true,即需要用户名和密码
spring.mail.properties.mail.smtp.auth=true
#通信协议加密
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
编写单元测试
将工程下的resources目录拷贝到测试目录下,编写测试代码
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringBootEmailApplicationTests {
@Value("${spring.mail.username}")
private String userName;
@Autowired
private JavaMailSender javaMailSender;
@Test
public void sendSimpleEmail(){
SimpleMailMessage message=new SimpleMailMessage();
message.setFrom(userName);//发送者
message.setTo("492782442@qq.com");//接收者
message.setSubject("测试主题");//邮件主题
message.setText("测试内容");//邮件内容
javaMailSender.send(message);
}
}
发送成功截图如下:
github地址 spring-boot 2.0-leaning