使用springboot来发送邮件还是比较简单的,这里我们以发送qq邮件为例
1.首先,需要在自己的qq邮箱中开启POP3服务
步骤1:打开qq邮箱 > 点击设置 > 账户 > 找到下面这个位置 因为我这里是已经开启的所以你们默认没开启的需要开启一下
步骤2:这里是生成授权码的地方需要生成自己的授权码
2.上面准备工作完成以后接下来就开始我们的代码部分了
2.1 第一步先导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
2.2 第二步编写我们的配置文件
#要发送人的邮箱
spring.mail.username=1723246792@qq.com
#这个是我们之前保存的授权码
spring.mail.password=tdzxafrpugkzdejf
#qq邮箱是就qq.com 如果是网易 后缀就可以改为163.com
spring.mail.host=smtp.qq.com
#这个是qq特有的需要开启
spring.mail.properties.mail.smtp.ssl.enable=true
2.3下面就可以去编写的发送邮箱的代码了,我这里是直接用测试类去测试的
2.3.1这个是一封简单邮件
@Autowired
JavaMailSenderImpl mailSender;
@Test
public void contextLoads() {
//发送邮件
//内容
SimpleMailMessage message = new SimpleMailMessage();
message.setSubject("springboot发送邮件");
message.setText("一封简单邮件");
//收件人和发件人
message.setFrom("1723246792@qq.com");
message.setTo("1723246792@qq.com");
//发送
mailSender.send(message);
}
2.3.2这个是一封复杂的邮件
@Autowired
JavaMailSenderImpl mailSender;
@Test
void test2() throws MessagingException {
//一个复杂的邮件
MimeMessage mimeMessage = mailSender.createMimeMessage();
//组装 true表示支持多文件,设置编码还可以再加参数"utf-8"
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
//正文
helper.setSubject("springboot发送邮件");
//true表示是否支持html
helper.setText("<h1>一封复杂的邮件</h1>",true);
//附件
helper.addAttachment("1.jpg",new File("D:\\java\\Spring_course\\untitled2\\mail-java\\src\\1.png"));
helper.addAttachment("2.sql",new File("C:\\Users\\张帅鹏\\Desktop\\2018新教材.docx"));
helper.addAttachment("3.mp4",new File("C:\\Users\\张帅鹏\\Desktop\\新建文本文档 (2).txt"));
//收件人和发件人
helper.setFrom("1723246792@qq.com");
helper.setTo("1723246792@qq.com");
//发送
mailSender.send(mimeMessage);
}
总结:到这里用springboot发送邮件就结束了,更用原生servlet发送比起来是不是超级简单