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就是发送邮箱的关键代码

java 复制代码
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());
    }

    @Recover
    public void recover(Exception e, BaseEvent<MailDTO> event) {
        // 记录日志
        log.error("邮件发送失败", e);
    }
}
java 复制代码
@Data
@Builder
public class MailDTO {
    private String mail;
    private String title;
    private String content;
}
相关推荐
全栈陈序员几秒前
【Python】基础语法入门(三十三)—— 日志系统详解:用 logging 记录程序运行
java·开发语言·python
她的男孩9 分钟前
低代码加字段后表结构怎么同步:预览安全 DDL,高风险变更再强制执行
java·spring boot·低代码
简简单单就是我_hehe16 分钟前
一次 ClickHouse 服务器磁盘告警的排查与修复实录
java·服务器·前端
Thomas.Sir20 分钟前
第11课:文件上传下载、跨域CORS配置,SpringBoot4.x跨域新方案
java·spring boot
wuminyu26 分钟前
JVM规范学习总结:class执行性能差异
java·linux·c语言·jvm·c++
一条泥憨鱼37 分钟前
【RabbitMQ】高级篇
java·分布式·rabbitmq·php·ruby
京师20万禁军教头44 分钟前
50-常用类-Arrays
java
寰梦1 小时前
Spring Boot + MinIO 大文件上传完整实战:MD5 秒传、分片上传、断点续传与引用一致性
java·spring boot·文件上传·minio
云和数据.ChenGuang9 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
摇滚侠9 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 12
java·数据库·笔记