SpringBoot中邮件任务的使用

 更新时间:2023年10月18日 10:41:56   作者:yuhuofei2021  
这篇文章主要介绍了SpringBoot中邮件任务的使用,SpringBoot 邮件任务是指使用SpringBoot框架来实现邮件发送和接收的功能,通过SpringBoot的自动配置和简化的开发流程,我们可以轻松地集成邮件功能到我们的应用程序中,需要的朋友可以参考下

1. 引入依赖

在项目的 pom.xml 文件中,引入下面的依赖

<!--email依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

2. 更改配置

在 application.properties 配置文件中,配置好邮箱的信息,例如下面的

#邮箱配置
spring.mail.username=2162759651@qq.com
spring.mail.password=ejhvuqqibfrneafb
spring.mail.host=smtp.qq.com
spring.mail.properties.mail.smtp.ssl.enable=true

在这里插入图片描述

说明:这里用的是 qq 邮箱,需要开启 POP3/SMTP 服务,得到授权码,如果直接配置邮箱账号的明文密码登录,是无法登录的。

在这里插入图片描述

3、编写测试类测试发送邮件

测试类如下

package com.yuhuofei;

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

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

@SpringBootTest
class SpringbootSwaggerApplicationTests {

    @Autowired
    private JavaMailSenderImpl mailSender;

    //简单的邮件
    @Test
    void contextLoads() {
        SimpleMailMessage message = new SimpleMailMessage();
        message.setSubject("邮件主题--测试");
        message.setText("这是邮件正文内容,测试SpringBoot的邮件任务!");
        message.setTo("2162759651@qq.com");
        message.setFrom("2162759651@qq.com");
        //发送
        mailSender.send(message);
    }

    //复杂的邮件
    @Test
    void contextLoadsMail() throws MessagingException {

        MimeMessage message = mailSender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message, true, "utf-8");

        //标题及正文部分
        helper.setSubject("复杂邮件-测试");
        helper.setText("<p style='color:red'>这是邮件正文内容,测试SpringBoot的邮件任务!</p>", true);

        //附件
        helper.addAttachment("1.png", new File("C:\\Users\\yuhuofei\\Desktop\\1.png"));
        helper.addAttachment("2.png", new File("C:\\Users\\yuhuofei\\Desktop\\2.png"));
        //发送
        mailSender.send(message);
    }
}

测试结果

邮件能正常发送和接收

在这里插入图片描述

到此这篇关于SpringBoot中邮件任务的使用的文章就介绍到这了,更多相关SpringBoot邮件任务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一个MIDP俄罗斯方块游戏的设计和实现

    一个MIDP俄罗斯方块游戏的设计和实现

    一个MIDP俄罗斯方块游戏的设计和实现...
    2006-12-12
  • Maven是什么?Maven的概念+作用+仓库的介绍+常用命令的详解

    Maven是什么?Maven的概念+作用+仓库的介绍+常用命令的详解

    Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑.,本文给大家介绍Maven的概念+作用+仓库的介绍+常用命令,感兴趣的的朋友跟随小编一起看看吧
    2020-09-09
  • Fluent Mybatis让你摆脱Xml文件的技巧

    Fluent Mybatis让你摆脱Xml文件的技巧

    Fluent-Mybatis类似于Mybatis-Plus是对Mybatis进一步的封装,可以只用一个实体类对象,通过代码生成器,在编译的过程中生成所需要的各类文件,简化了项目的基础构建,提高开发效率,本文重点给大家介绍Fluent Mybaits让你摆脱Xml文件的技巧,一起看看吧
    2021-08-08
  • java判断integer是否为空的详细过程

    java判断integer是否为空的详细过程

    在java编写过程中,我们会使用到各种各样的表达式,在使用表达式的过程中,有哪些安全问题需要我们注意的呢?对java判断integer是否为空相关知识感兴趣的朋友一起来看看吧
    2023-02-02
  • 教你一步到位部署运行MyBatis3源码(保姆级)

    教你一步到位部署运行MyBatis3源码(保姆级)

    一个框架的运行流程从最简单的一个helloworld来看其源码就能了解到框架的原理是什么,这篇文章主要给大家介绍了关于如何一步到位部署运行MyBatis3源码的相关资料,需要的朋友可以参考下
    2022-06-06
  • Java中防止数据重复提交超简单的6种方法

    Java中防止数据重复提交超简单的6种方法

    在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,这篇文章主要给大家介绍了关于Java中防止数据重复提交超简单的6种方法,需要的朋友可以参考下
    2021-11-11
  • spring BeanProcessor接口详解

    spring BeanProcessor接口详解

    这篇文章主要介绍了spring BeanProcessor接口的相关资料,帮助大家更好的理解和学习使用spring,感兴趣的朋友可以了解下
    2021-03-03
  • JAVA浮点数计算精度损失底层原理与解决方案

    JAVA浮点数计算精度损失底层原理与解决方案

    本文主要介绍了JAVA浮点数计算精度损失底层原理与解决方案。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • 深入了解Java方法的重载与重写

    深入了解Java方法的重载与重写

    在最初学习java的时候,人们都知道,java这种面向对象的语言,一共有三大特征,分别是:封装、继承、多态。多态的实现途径有三种:重写、重载、接口实现。本文就来为大家详细讲讲Java方法的重载与重写
    2022-07-07
  • java如何删除以逗号隔开的字符串中某一个值

    java如何删除以逗号隔开的字符串中某一个值

    这篇文章主要介绍了java如何删除以逗号隔开的字符串中某一个值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06

最新评论