SpringBoot邮件任务

举报
别团等shy哥发育 发表于 2023/02/04 16:47:41 2023/02/04
【摘要】 1、引入starter <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 2、发送流程: 3、配置application.properties如果用的是application.yml照...

1、引入starter

 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-mail</artifactId>
 </dependency>

2、发送流程:

在这里插入图片描述

3、配置application.properties

如果用的是application.yml照着配就行,原理一样的

spring.mail.username=1144722582@qq.com
spring.mail.password=*******
spring.mail.host=smtp.qq.com

上面的第二个是授权码(我打码了),你自己去qq邮箱上面开启相应服务即可
在这里插入图片描述
最后生成授权码:
在这里插入图片描述

4、测试简单邮件发送

package com.atguigu.springboot;

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;

import javax.mail.internet.MimeMessage;
import java.io.File;

@SpringBootTest
class Springboot04TaskApplicationTests {
    @Autowired
    JavaMailSenderImpl mailSender;

    @Test
    void contextLoads() {
        SimpleMailMessage message = new SimpleMailMessage();
        //右键设置
        message.setSubject("通知-今晚开会");
        message.setText("今晚7:30开会");

        message.setTo("xiongtete0519@163.com");
        message.setFrom("1144722582@qq.com");

        mailSender.send(message);
    }
 
}

运行之后去网易邮箱查看:
在这里插入图片描述

5、测试带附件的邮件发送

package com.atguigu.springboot;

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;

import javax.mail.internet.MimeMessage;
import java.io.File;

@SpringBootTest
class Springboot04TaskApplicationTests {
    @Autowired
    JavaMailSenderImpl mailSender;

    @Test
    public void test02() throws Exception{
        //1、创建一个复杂的消息邮件
        MimeMessage mimeMessage = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true);
        //右键设置
        helper.setSubject("通知-今晚开会");
        helper.setText("<b style='color:red'>今天7:30开会</b>",true);

        helper.setTo("xiongtete0519@163.com");
        helper.setFrom("1144722582@qq.com");

        //上传文件
        helper.addAttachment("03.jpg",new File("C:\\Users\\Peroy\\Pictures\\Saved Pictures\\03.jpg"));
        helper.addAttachment("preview.jpg",new File("C:\\Users\\Peroy\\Pictures\\Saved Pictures\\preview.jpg"));

        mailSender.send(mimeMessage);
    }

}

最后的两个文件你用你自己电脑里面的就行,我是传了两张照片。
运行之后去网易邮箱查看:
在这里插入图片描述

可以看到附件和html格式的文件内容都生效了。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。