SpringBoot整合mail进行发送邮箱

Spring Boot整合邮箱进行发送

1. 添加依赖

在pom.xml文件中添加spring-boot-starter-mail依赖,如下所示:

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

2. 配置邮件发送参数

在application.properties或application.yml文件中配置邮件发送参数,如下所示:

# 邮件服务器地址和端口号
spring.mail.host=smtp.qq.com
spring.mail.port=587
# 发件人邮箱账号和密码
spring.mail.username=your_email@qq.com
spring.mail.password=your_email_password
# 收件人邮箱账号(可以同时设置多个)
spring.mail.receivers=receiver1@example.com,receiver2@example.com
# 邮件编码格式
spring.mail.properties.mail.default-encoding=UTF-8

3.编写邮件发送服务类

创建一个邮件发送服务类,使用JavaMailSender接口实现邮件发送功能,如下所示:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Service;@Service
public class EmailService {@Autowiredprivate JavaMailSender javaMailSender;public void sendEmail(String subject, String text) {SimpleMailMessage message = new SimpleMailMessage();  // 实例化邮件对象message.setFrom("your_email@qq.com");  // 发件人邮箱账号message.setTo("receiver1@example.com,receiver2@example.com");  // 收件人邮箱账号,多个账号用逗号分隔message.setSubject(subject);  // 邮件主题message.setText(text);  // 邮件内容javaMailSender.send(message);  // 发送邮件}
}

4. 调用邮件发送服务类的方法发送邮件

@Autowired
private EmailService emailService;
...
emailService.sendEmail("Hello World", "This is a test email sent by Spring Boot!");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/588630.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年全国职业院校技能大赛网络系统管理 网络模块 出口配置

(四)出口网络配置 1.北京综合服务中心办公终端可通过出口路由器R2 G 0/0.21子接口的NAPT方式访问互联网。 ip route vrf BG 0.0.0.0 0.0.0.0 GigabitEthernet 0/0.21 21.1.1.1 ip access-list extended 100 10 permit ip 10.1.20.0 0.0.0.255 any 20 permit ip 10.2.20.0 0…

jmeter的常用功能及在测试中的基本使用和压测实战

Jmeter基础功能 了解Jmeter的常用组件 元件&#xff1a;多个类似功能组件的容器&#xff08;类似于类&#xff09; 一&#xff1a;Test Plan&#xff08;测试计划&#xff09; 测试计划通常用来给测试的项目重命名&#xff0c;使用多线程脚本运行时还可以配置线程组运行方式…

HCIA-Datacom题库(自己整理分类的)——STP协议判断

默认情况下&#xff0c;STP协议中根桥的根路径开销一定是0。√ 根桥交换机上所有的端口都是指定端口。 交换网络存在冗余链路时&#xff0c;使用STP可以解决交换网络中的环路问题。√ 当交换机有冗余链路时&#xff0c;使用STP可以解决问题。√ 交换机组成的网络不开启STP&…

向新字符设备驱动代码框架中添加Led功能函数

一. 简介 上一篇文章学习编写新字符设备驱动框架代码。文章地址如下&#xff1a; 新字符设备驱动框架代码搭建-CSDN博客 本文在以上这篇文章代码实现的基础上&#xff0c;加入涉及 Led灯的功能函数集实现。 代码实现要求&#xff1a;测试程序&#xff08;即应用程序&#…

【C++】STL 容器 - map 关联容器 ① ( std::map 容器简介 | std::map 容器排序规则 | std::map 容器底层实现 )

文章目录 一、std::map 容器1、std::map 容器简介2、std::map 容器排序规则3、std::map 容器底层实现 二、代码示例 - std::map 容器1、代码示例2、执行结果 一、std::map 容器 1、std::map 容器简介 std::map 容器 是 C 语言 标准模板库 ( STL , Standard Template Library ) …

分布式技术之数据复制技术

文章目录 什么是数据复制技术&#xff1f;数据复制技术原理及应用同步复制技术原理及应用异步复制技术原理及应用半同步复制技术原理及应用三种数据复制技术对比 什么是数据复制技术&#xff1f; 数据复制是一种实现数据备份的技术。数据复制技术&#xff0c;可以保证存储在不…

Plantuml之甘特图语法介绍(二十八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

基于SpringBoot的在线远程考试系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的在线远程考试系统,java…

磁盘和文件系统管理

一&#xff1a;磁盘结构&#xff1a; 1.磁盘基础&#xff1a; 扇区固定大小&#xff0c;每个扇区4k。磁盘会进行磨损&#xff0c;损失生命周期。 设备文件&#xff1a; 一切皆文件 设备文件&#xff1a;关联至一个设备驱动程序&#xff0c;进而能够跟与之对应硬件设备进行通…

UDP发送和接受数据

发送数据 public class sendmessage {public static void main (String[] args) throws IOException {DatagramSocket dsnew DatagramSocket();//打包数据开始String s"hello world";byte[] bs.getBytes();//获取InetAddress的对象InetAddress addressInetAddress.g…

什么是IDE?新手用哪个IDE比较

IDE代表集成开发环境&#xff08;Integrated Development Environment&#xff09;&#xff0c;它是一种软件应用程序&#xff0c;提供了一套工具&#xff0c;用于编写、调试和运行软件程序。一个IDE通常包含代码编辑器、编译器、调试器和其他各种工具&#xff0c;以便开发人员…

Rust学习笔记000 安装

安装命令 curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh $ curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh info: downloading installerWelcome to Rust!This will download and install the official compiler for the Rust programming la…

【基础】【Python网络爬虫】【3.chrome 开发者工具】(详细笔记)

Python网络爬虫基础 chrome 开发者工具元素面板&#xff08;Elements)控制台面板&#xff08;Console&#xff09;资源面板&#xff08;Source&#xff09;网络面板&#xff08;Network&#xff09;工具栏Requests Table详情 chrome 开发者工具 ​ 当我们爬取不同的网站是&…

MATLAB常用笔记记录(持续更新)

3.错误使用 reshape 元素数不能更改。请使用 [] 作为大小输入之一&#xff0c;以自动计算该维度的适当大小。 仔细检查之后发现原因是&#xff1a;两个栅格图层的行列数不一致。解决办法如下&#xff1a; 先改变栅格图层1源文件的投影坐标系&#xff0c;再进行掩膜提取&#x…

Linux环境安装2

1 redis单机版安装 1.1 安装 wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz tar -xzvf tcl8.6.1-src.tar.gz cd /usr/local/tcl8.6.1/unix/ ./configure make && make install使用redis-3.2.8.tar.gz&#xff08;截止2017年4月的最新稳定版&…

目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】点云配准

目录 几个相关概念 算法原理 什么是点云 点云的处理 ICP 算法 1 问题描述

常用CSS样式

目录 1、文本超出省略号代替 2、自定义滚动条样式 3、文本无法选中 4、字体间距 5、放大动画效果 6、CSS引用数字字体 7、CSS去角 8、CSS :after、:before、::after、::before的使用 9、CSS使用::after去除浮动 10、时间动画属性 transition 11、颜色渐变 12、解决…

javaWeb学生信息管理系统2

一、学生信息管理系统SIMS 一款基于纯Servlet技术开发的学生信息管理系统&#xff08;SIMS&#xff09;&#xff0c;在设计中没有采用SpringMVC和Spring Boot等框架。系统完全依赖于Servlet来处理HTTP请求和管理学生信息&#xff0c;实现了信息的有效存储、检索和更新&#xf…

React16源码: Component与PureComponent源码实现

概述 Component 就是组件, 这个概念依托于最直观的在react上的一个表现&#xff0c;那就是 React.Component我们写的组件大都是继承于 React.Component 这个baseClass 而写的类这个类代表着我们使用 react 去实现的一个组件那么在react当中不仅仅只有 Component 这一个baseCla…

【web安全】登录界面渗透的思路总结

前言 小菜作者的总结。 如果大家知道其他的安全问题&#xff0c;欢迎大家补充赐教。我们一起完善登录页面的渗透思路。 &#xff08;如果大家有好的博客讲解对应的漏洞&#xff0c;欢迎分享~&#xff09; sql注入 登录页面是需要与数据库打交道的。是需要带入数据库查询的…