首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SpringBoot邮件任务

SpringBoot邮件任务

1、引入starter

代码语言:javascript
复制
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-mail</artifactId>
 </dependency>

2、发送流程:

3、配置application.properties

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

代码语言:javascript
复制
spring.mail.username=1144722582@qq.com
spring.mail.password=*******
spring.mail.host=smtp.qq.com

上面的第二个是授权码(我打码了),你自己去qq邮箱上面开启相应服务即可

最后生成授权码:

4、测试简单邮件发送

代码语言:javascript
复制
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、测试带附件的邮件发送

代码语言:javascript
复制
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格式的文件内容都生效了。

下一篇
举报
领券