• 邮件|gitpushgithub报错|Lombok注解


    基于 Spring Boot 搭建一个定时发送邮件的项目可以按照以下步骤进行:

    创建一个新的 Spring Boot 项目,并添加所需的依赖。在 pom.xml 文件中添加以下依赖项(根据你的需要进行调整):
    xml



    org.springframework.boot
    spring-boot-starter-web

    
    
        org.springframework.boot
        spring-boot-starter-mail
    
    
    
    
        org.springframework.boot
        spring-boot-starter-task
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    在 application.properties 或 application.yaml 配置文件中添加邮件发送所需的 SMTP 服务器配置信息,例如: properties # SMTP Server Configuration spring.mail.host=your-smtp-server spring.mail.port=your-smtp-port spring.mail.username=your-username spring.mail.password=your-password 创建一个用于发送邮件的服务类,例如 EmailService。在该类中注入 JavaMailSender 对象,并编写发送邮件的方法。例如: java 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 {

    private final JavaMailSender mailSender;
    
    @Autowired
    public EmailService(JavaMailSender mailSender) {
        this.mailSender = mailSender;
    }
    
    public void sendEmail(String to, String subject, String body) {
        SimpleMailMessage message = new SimpleMailMessage();
        message.setTo(to);
        message.setSubject(subject);
        message.setText(body);
        mailSender.send(message);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    }
    创建一个定时任务类,用于每天定时发送邮件。例如,创建一个 EmailScheduler 类,注入 EmailService 对象,并使用 @Scheduled 注解配置定时任务。以下示例以每天早上 9 点发送邮件为例:
    java
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Component;

    @Component
    public class EmailScheduler {

    private final EmailService emailService;
    
    @Autowired
    public EmailScheduler(EmailService emailService) {
        this.emailService = emailService;
    }
    
    @Scheduled(cron = "0 0 9 * * ?") // 每天早上 9 点触发
    public void sendDailyEmail() {
        String to = "recipient@example.com";
        String subject = "Daily Email";
        String body = "This is the content of the daily email.";
        emailService.sendEmail(to, subject, body);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    }
    运行应用程序,定时任务将在设定的时间触发,自动发送邮件。
    请注意,上述代码仅作为示例,你需要根据实际需求进行适当的调整和扩展。同时,确保你的 SMTP 服务器和账户准备就绪,并且网络连接正常。

    当以 QQ 邮箱为例时,你可以使用以下配置来设置 SMTP 服务器

    properties

    SMTP Server Configuration for QQ Mail

    spring.mail.host=smtp.qq.com
    spring.mail.port=587
    spring.mail.username=your-qq-email@example.com
    spring.mail.password=your-qq-email-password
    spring.mail.properties.mail.smtp.auth=true
    spring.mail.properties.mail.smtp.starttls.enable=true
    请将 your-qq-email@example.com 替换为你的 QQ 邮箱地址,并将 your-qq-email-password 替换为你的 QQ 邮箱密码。

    QQ 邮箱使用 STARTTLS 协议进行安全连接,因此需要设置 spring.mail.properties.mail.smtp.starttls.enable=true 开启 STARTTLS。

    请确保你的 QQ 邮箱已启用 SMTP 服务,并且允许第三方应用程序访问。你可以在 QQ 邮箱的设置中查找有关如何启用 SMTP 服务和生成授权码的详细信息。

    为什么git要配置代理
    Git报错: Failed to connect to github.com port 443
    git报错:Failed to connect to github.com port 443 after 21072 ms: Couldn’t connect to server


    Lombok注解

    Lombok注解:@Accessors链式编程
    Lombok注解:@RequiredArgsConstructor–简化@Autowired书写

  • 相关阅读:
    Qt 读写文件(QFile&QTextStream&QDataStream) 详解
    oracle主键自增
    计网 第一章 概述
    go get 拉取报错The project you were looking for could not be found的解决方法
    安全架构设计理论与实践
    VMWare和CentOS 7 的超级详细的安装步骤!!
    【Git技巧】第七篇 git分区原理(超级详细)
    【MetaLearning】有关Pytorch的元学习库higher的基本用法
    设计模式之十:状态模式
    python工具方法37 voc数据统计分析(box聚类、box散点图、类别频率统计、box面积统计)
  • 原文地址:https://blog.csdn.net/qq_45699990/article/details/131814794