SpringBoot如何实现发送邮件的极速入门与实践?

摘要:一、Email前言介绍 邮件发送业务,是很多公司都有的,本博客介绍一下基于SpringBoot的邮件发送功能,邮箱服务基于腾讯QQ邮箱 SpringBoot的肯定有很多场景启动器starter,SpringBoot官方提供了spring-b
目录一、Email前言介绍二、Email例子实践2.1 开发实验环境准备2.2 Meavn配置文件2.3 application配置2.4 发送文本格式邮件2.5 发送Html格式邮件2.6 发送html内嵌图片2.7 发送模板html邮件2.8 发送Attachment邮件 一、Email前言介绍 邮件发送业务,是很多公司都有的,本博客介绍一下基于SpringBoot的邮件发送功能,邮箱服务基于腾讯QQ邮箱 SpringBoot的肯定有很多场景启动器starter,SpringBoot官方提供了spring-boot-starter-mail作为邮件服务的场景启动器 二、Email例子实践 2.1 开发实验环境准备 JDK 1.8 SpringBoot2.2.1 Maven 3.2+ 开发工具 IntelliJ IDEA smartGit 创建一个SpringBoot Initialize项目,详情可以参考我之前博客:SpringBoot系列之快速创建项目教程 2.2 Meavn配置文件 配置spring-boot-starter-mail: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> 配置Thymeleaf模板引擎 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> lombok,非必须,只是不想写bean类的set,get <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> 2.3 application配置 新建application.yml,注意password在QQ邮箱里不是邮箱密码,需要去申请SMTP服务给的secret spring: mail: host: smtp.qq.com username: your_emial@qq.com password: cmlebzqdtvejdibe default-encoding: utf-8 向腾讯申请secret: 网易163邮箱的配置: spring: mail: host: smtp.163.com username: your163account@163.com password: your163password default-encoding: utf-8 2.4 发送文本格式邮件 Email DTO类: package com.example.springboot.email.bean; import lombok.Data; /** * <pre> * EmailDto * </pre> * * <pre> * @author mazq * 修改记录 * 修改后版本: 修改人: 修改日期: 2020/07/22 16:26 修改内容: * </pre> */ @Data public class EmailDto { /** * 发送对象 */ private String sendTo; /** * 发送主题 */ private String subject; /** * 邮件内容 */ private String content; /**
阅读全文