首先要开启qq邮箱的POP3/SMTP 服务
使用qq邮箱发送邮件
2.1首先导入我们springBoot提供的jar包
<!--邮件发送依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
2.2在springBoot的yaml文件中配置信息
spring:
# 发送邮件配置
mail:
host: smtp.qq.com # 配置 smtp 服务器地址
port: 587 # smtp 服务器的端口
username: xxxxxxxccc@qq.com # 配置邮箱用户名(你的邮箱地址)
password: xxxxxxxxxxxxxxxxx # 配置申请到的授权码(刚让复制的授权码)
default-encoding: UTF-8 # 配置邮件编码
properties:
mail:
smtp:
socketFactoryClass: javax.net.ssl.SSLSocketFactory # 配饰 SSL 加密工厂
debug: true
2.3实现纯文本的邮件发送
//我们要注入javaMailSender的对象
@Autowired
private JavaMailSender javaMailSender;
@GetMapping("/sendSimpleMail")
public String sendSimpleMail(){
//创建一个邮件对象
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
//添加邮件的标题
simpleMailMessage.setSubject("测试文件");
//添加邮件的内容
simpleMailMessage.setText("测试我们发送邮件的能力");
//添加接收方邮箱
simpleMailMessage.setTo("xxxxxxxx@qq.com");
//添加发送方邮箱
simpleMailMessage.setFrom("xxxxxxxxxx@qq.com");
//发送邮件
javaMailSender.send(simpleMailMessage);
return "发送成功";
}
2.4实现带附件的邮件发送
//我们要注入javaMailSender的对象
@Autowired
private JavaMailSender javaMailSender;
@GetMapping("/sendHelpMail")
public String sendHelpMail(){
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
try {
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage,true);
mimeMessageHelper.setFrom("xxxxxxxx@qq.com"); // 设置发送发
mimeMessageHelper.setTo("xxxxxxxxxx@qq.com"); // 设置接收方
mimeMessageHelper.setSubject("测试发送图片"); // 设置邮件主题
mimeMessageHelper.setText("发送的图片文本"); // 设置邮件内容
File file = new File("src/main/java/com/qtt/demo/File/123.jpg");
//设置发送文件名,文件
mimeMessageHelper.addAttachment(file.getName(), file);
} catch (MessagingException e) {
e.printStackTrace();
}
// 发送邮件
javaMailSender.send(mimeMessage);
return "发送成功";
}