530 Login fail. A secure connection is requiered(such as ssl)-java发送QQ邮箱(简单配置)

由于cs的csdN许多文章关于这方面的都是vip文章,而本文是免费的,希望广大网友觉得有帮助的可以多点赞和关注!
QQ邮箱授权码到这里去开启
在这里插入图片描述
在这里插入图片描述
授权码是16位的字母,填入下面的mail.setting里面的pass里面

# 邮件服务器的SMTP地址
host = smtp.qq.com
# 邮件服务器的SMTP端口
port = 465
# 发件人(必须正确,否则发送失败)
from = xxx@qq.com
# 用户名(注意:如果使用foxmail邮箱,此处user为qq号)
user = xxx
# 密码(注意,某些邮箱需要为SMTP服务单独设置密码)
pass = 16位授权码
# 使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。
starttlsEnable = true# 使用SSL安全连接
sslEnable = true
# 指定实现javax.net.SocketFactory接口的类的名称,这个类将被用于创建SMTP的套接字
socketFactoryClass = javax.net.ssl.SSLSocketFactory
# 如果设置为true,未能创建一个套接字使用指定的套接字工厂类将导致使用java.net.Socket创建的套接字类, 默认值为true
socketFactoryFallback = true
# 指定的端口连接到在使用指定的套接字工厂。如果没有设置,将使用默认端口456
socketFactoryPort = 465# SMTP超时时长,单位毫秒,缺省值不超时
timeout = 0
# Socket连接超时值,单位毫秒,缺省值不超时
connectionTimeout = 0

在这里插入图片描述

我的Spring boot监听类,里面MailUtil.send就是发送邮箱的关键代码

import cn.hutool.extra.mail.MailUtil;
@Slf4j
@Component
public class MailEventListener {@Async(ThreadPoolConfig.EVENT_THREAD_POOL)@Retryable(value = Exception.class, maxAttempts = 3, backoff = @Backoff(delay = 1000L))@EventListener//监听MailDTO事件//如果这里是LogDTO则监听log类型的事件public void listen(BaseEvent<MailDTO> event) {// 发送邮件MailDTO mailDTO = event.getData();System.out.println("尝试发送邮件");MailUtil.send(mailDTO.getMail(), mailDTO.getTitle(), mailDTO.getContent(), false);log.info(mailDTO.getMail() + " " + mailDTO.getTitle() + " " + mailDTO.getContent());}@Recoverpublic void recover(Exception e, BaseEvent<MailDTO> event) {// 记录日志log.error("邮件发送失败", e);}
}
@Data
@Builder
public class MailDTO {private String mail;private String title;private String content;
}

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

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

相关文章

SpringBoot整合Swagger

一、Swagger简介 Swagger 是一种 API 文档工具&#xff0c;可以通过生成 API 文档来提高开发者的工作效率&#xff0c;同时也可以提高 API 的可读性和可维护性。Spring Boot 可以与 Swagger 进行整合&#xff0c;以方便生成 API 文档。下面介绍一下如何使用 Spring Boot 整合 S…

【图形学入门笔记】线性代数的本质

【笔记未完待续】如果我的分享对你有帮助&#xff0c;请记得点赞关注不迷路。 视频源地址&#xff1a;https://www.youtube.com/watch?vfNk_zzaMoSs 作者&#xff1a;3Blue1Brown 此处仅做个人笔记使用。 01 - 向量究竟是什么&#xff1f; 线性代数中最基础、最根源的…

can数据记录仪在汽车路测中扮演着**关键角色*

can数据记录仪主要用于实时采集、存储和分析车辆运行中的多维度数据&#xff0c;帮助工程师优化车辆性能、验证安全性、改进驾驶体验&#xff0c;并支持法规合规性测试。 can数据记录仪在路测中扮演几个关键角色&#xff0c;如下&#xff0c; 动力系统监控&#xff1a;记录发…

使用前端 html css 和js 开发一个AI智能平台官网模板-前端静态页面项目

最近 AI 人工智能这么火&#xff0c;那必须针对AI 做一个 AI方面的 官方静态网站练手。让自己的前端技术更上一层楼&#xff0c;哈哈。 随着人工智能技术的不断发展&#xff0c;越来越多的AI应用开始渗透到各行各业&#xff0c;为不同领域的用户提供智能化解决方案。本网站致力…

仿真环境下实现场景切换、定位物体和导航行走

1. 代码&#xff08;以微波炉为例&#xff09; from ai2thor.controller import Controller import math import randomdef distance_2d(pos1, pos2):"""计算两点之间的二维欧几里得距离&#xff08;忽略Z轴&#xff09;"""return math.sqrt((p…

1.测试策略与计划设计指南

1.介绍 1.1项目介绍 完整项目组成&#xff1a;1.基于K8S定制开发的SaaS平台&#xff1b;2.多个团队提供的中台服务(微服务)&#xff1b;3.多个业务团队开发的系统平台。涉及多个项目团队、上百个微服务组件。 测试在所有团队开发测试后&#xff0c;自己搭建测试环境&#xff0c…

LeetCode热题100- 最小栈【JavaScript讲解】

“日日行&#xff0c;不怕千万里&#xff1b;常常做&#xff0c;不怕千万事。” —— 《格言联璧处事》 oi&#xff01;&#xff01;栈的知识点在这里&#xff01;&#xff01;&#xff01;点击跳转&#xff01;&#xff01;&#xff01; 最小栈讲解目录&#xff1a; 题目&…

D3DSource 2016 引擎完整教程

D3DSource 引擎是一款基于 Direct3D 的 3D 图形渲染引擎&#xff0c;2016 版是较早的一个版本。由于 D3DSource 并不是主流开源引擎&#xff08;如 Unity、Unreal Engine&#xff09;&#xff0c;详细的官方文档可能较少。因此&#xff0c;我会结合 Direct3D 编程知识&#xff…

DeepSeek:我的AI助手之旅

★【前言】: 初次使用AI助手帮我写作,就像摸石头过河一样,一点点的前行。我在慢慢的摸索,慢慢的体会中,感悟出的一点个人心得体会现分享给大家。这也说明一个问题,网站上各种使用方法和技巧是对于已经使用过的人来说的方便和快捷,但对于刚刚接触的使用者来说,网上的各…

【Cursor】报错:FATAL:v8_initializer.cc(630)] Error loading V8 startup snapshot file

【Cursor】报错&#xff1a;FATAL:v8_initializer.cc(630)] Error loading V8 startup snapshot file 最初是在使用Cursor时左下角出现一个类似更新失败的提示&#xff0c;没注意&#xff0c;后来界面非常卡。 接着重新打开Cursor&#xff0c;提示说原文件不存在要删除快捷方式…

布隆过滤器(Bloom Filter)

文章目录 1. 定义2. 核心原理2.1 数据结构2.2 操作流程2.3 扩容 3. 优缺点3.1 优点3.2 缺点 4. 使用场景4.1 适用场景4.2 不适用场景 5. 手写布隆过滤器 1. 定义 布隆过滤器&#xff08;Bloom Filter&#xff09;是一种概率型数据结构&#xff0c;用于快速判断一个元素是否属于…

Build错误:Cannot determine build data storage root for project 和 无法加载主类的解决办法的经验分享

Build错误&#xff1a;Cannot determine build data storage root for project 解决方案与经验分享 1. 引言 查看错误信息 “Cannot determine build data storage root for project”的含义&#xff1a; 这是一个关于构建项目时遇到的常见错误。错误信息表明构建工具无法确定…

2025年02月26日Github流行趋势

项目名称&#xff1a;aibrix 项目地址url&#xff1a;https://github.com/vllm-project/aibrix项目语言&#xff1a;Jupyter Notebook历史star数&#xff1a;2234今日star数&#xff1a;881项目维护者&#xff1a;Jeffwan, varungup90, brosoul, nwangfw, kr11项目简介&#xf…

理解大模型的量化

1. 什么是量化 量化是大模型领域中的一项关键技术&#xff0c;它通过降低模型参数的精度&#xff0c;将浮点数转换为整数或者定点数&#xff0c;从而实现模型的压缩和优化。 这样做的目的主要是减少模型的存储需求、加快推理速度&#xff0c;并且降低模型的计算复杂度&#xf…

构建逻辑思维链(CoT)为金融AI消除幻觉(保险理赔篇)

在上一篇文章中&#xff0c;我们介绍了如何利用亚马逊云科技的Amazon Bedrock GuardRails自动推理检查为金融行业的AI应用提升准确性&#xff0c;消除幻觉。在本案例中&#xff0c;我们将探讨一个利用AI副主保险公司评估长期护理保险理赔审核的场景。 自动推理检查配置 在本方…

上传securecmd失败

上传securecmd失败 问题描述&#xff1a;KES V8R6部署工具中&#xff0c;节点管理里新建节点下一步提示上传securecmd失败&#xff0c;如下&#xff1a; 解决办法&#xff1a; [rootlocalhost ~]# yum install -y unzip 上传的过程中会解压&#xff0c;如果未安装unzip依赖包…

蓝桥杯 5.字符串

蓝桥杯 5.字符串 文章目录 蓝桥杯 5.字符串KMP&字符串哈希Manacher编程138-148字典树基础01Trie编程149-155 KMP&字符串哈希 KMP算法 字符串匹配算法, 用于匹配**模式串P(短)和文本串S(长)**中出现的所有位置, 例如, S “ababac”, P “aba”, 那么出现的所有位置就…

TEMU标签超简单制作方法,三步快速合成TEMU标签

这个标签编辑工具使用方法很简单&#xff0c;零基础小白也能合成TEMU标签/跨境合规标签。 第一步&#xff1a;选择一个符合需求的标签 这个工具提供了非常多的标签模板&#xff0c;选择一个自己编辑即可。 第二步&#xff1a;编辑标签内容 提供了超多自定义编辑功能&…

ChatGPT入驻Safari,AI搜索时代加速到来

2月25日&#xff0c;人工智能领域巨头OpenAI宣布了一项重磅更新&#xff1a;为其广受欢迎的ChatGPT应用新增Safari浏览器扩展功能&#xff0c;并支持用户将ChatGPT设置为Safari地址栏的默认搜索引擎。这一举措标志着OpenAI在将ChatGPT整合进用户日常网络浏览体验方面迈出了重要…

auto.js例子之WebView多页面浏览器

"ui";ui.layout(<vertical><horizontal id"webs" layout_weight"1"></horizontal><button id"one" text"第一个" /><button id"two" text"第二个" /><button id"…