当前位置: 首页 > news >正文

Spring Boot整合发送QQ邮箱功能

1. 创建Spring Boot项目

使用Spring Initializr(https://start.spring.io/)创建一个新的Spring Boot项目,并添加spring-boot-starter-mail依赖。

2. 添加配置

application.propertiesapplication.yml文件中添加QQ邮箱的SMTP配置。这里以application.yml为例:

spring:mail:host: smtp.qq.comport: 465username: your-qq-email@qq.com # 你的QQ邮箱地址password: your-qq-auth-code # 你的QQ邮箱授权码properties:mail:smtp:auth: truestarttls:enable: truerequired: truessl:enable: true

请确保将your-qq-email@qq.comyour-qq-auth-code替换为实际的QQ邮箱地址和授权码。

3. 创建邮件服务

在项目中创建一个名为EmailService.java的类,用于封装邮件发送的逻辑:

package com.example.demo.service;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;import javax.mail.internet.MimeMessage;@Service
public class EmailService {@Autowiredprivate JavaMailSender mailSender;public void sendSimpleEmail(String to, String subject, String content) {MimeMessage mimeMessage = mailSender.createMimeMessage();MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);helper.setFrom("your-qq-email@qq.com"); // 发件人地址helper.setTo(to); // 收件人地址helper.setSubject(subject); // 邮件主题helper.setText(content); // 邮件内容try {mailSender.send(mimeMessage);System.out.println("Email sent successfully.");} catch (Exception e) {System.err.println("Failed to send email: " + e.getMessage());}}
}

同样地,请将your-qq-email@qq.com替换为你的QQ邮箱地址。

4. 调用邮件服务

在Controller或其他需要发送邮件的地方调用EmailServicesendSimpleEmail方法:

package com.example.demo.controller;import com.example.demo.service.EmailService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class EmailController {@Autowiredprivate EmailService emailService;@GetMapping("/send-email")public String sendEmail() {String to = "recipient-email@example.com"; // 收件人邮箱地址String subject = "Test Email from QQ"; // 邮件主题String content = "Hello, this is a test email sent from QQ."; // 邮件内容emailService.sendSimpleEmail(to, subject, content);return "Email sending initiated.";}
}

请将recipient-email@example.com替换为实际的收件人邮箱地址。

5. 运行项目

启动Spring Boot项目,并访问

http://www.lryc.cn/news/372631.html

相关文章:

  • Milvus向量数据库
  • python cls的使用
  • idea中maven下载依赖缓慢解决方法
  • JS 中的各种距离 scrollTop?clientHeight?
  • 继承-进阶-易错点
  • 【图论应用】使用多路图(multigraph)对上海地铁站点图建模,并解决最短路径问题
  • RabbitMQ安装配置,封装工具类,发送消息及监听
  • iOS接入Flutter
  • 【ubuntu】用户添加root权限
  • 设计通用灵活的LabVIEW自动测试系统
  • C# WinForm —— 35 StatusStrip 介绍
  • 如何应对生活中的不确定性:仁者安仁,知者利仁。
  • C#面:请解释C#接口的显式实现有什么意义
  • STM32项目分享:智能窗帘系统
  • 【算法-力扣】72. 编辑距离(动态规划)
  • Spring 系统架构图
  • 同三维T80005EHS-4K60 4K60 HDMI/SDI编码器
  • React state(及组件) 的保留与重置
  • flask返回的数据怎么是转义后的字符串啊
  • C++17并行算法与HIPSTDPAR
  • 【什么是几度cms,主要功能有什么】
  • 组合和外观模式
  • 设置服务器禁止和ip通信
  • 中文技术文档的写作规范(搬运)
  • 「实战应用」如何用DHTMLX将上下文菜单集成到JavaScript甘特图中(一)
  • Python使用策略模式生成TCP数据包
  • 无文件落地分离拆分-将shellcode从文本中提取-file
  • MySQL 日志(一)
  • XML 编辑器:功能、选择与使用技巧
  • 单例模式(设计模式)