首页 > 其他分享 >spring boot配置QQ邮箱发送邮件

spring boot配置QQ邮箱发送邮件

时间:2024-06-21 16:10:17浏览次数:12  
标签:QQ spring org boot springframework mail import properties

1. 添加maven依赖项:

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-mail</artifactId>
   <version>${spring-boot-version}</version> </dependency>

2. 添加配置项 mail.properties

spring.mail.host=smtp.qq.com
[email protected]
spring.mail.password=授权码
spring.mail.port=465
spring.mail.protocol=smtps
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.default-encoding=UTF-8

3. 启动类扫描配置

@PropertySource(value = {"mail.properties"})

4. 发送邮件代码

import lombok.extern.slf4j.Slf4j;
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;

@Slf4j
@Servicepublic class MailService {

    @Autowired(required = false)
    private JavaMailSender mailSender;
    
    public boolean sendEmail(MailInfoBO mailInfo) {
        try {
            // 创建一个邮件消息
            MimeMessage message = mailSender.createMimeMessage();

            // 创建 MimeMessageHelper
            MimeMessageHelper helper = new MimeMessageHelper(message, false);

            // 发件人邮箱和名称
            helper.setFrom("[email protected]", "测试");
            // 收件人邮箱
            helper.setTo(mailInfo.getToEmail());
            // 邮件标题
            helper.setSubject(mailInfo.getSubject());
            // 邮件正文,第二个参数表示是否是HTML正文
            helper.setText(mailInfo.getContent(), true);

            mailSender.send(message);
            return true;
        } catch (Exception e) {
            log.error("MailService error", e);
        }
        return false;
    }
}

 

标签:QQ,spring,org,boot,springframework,mail,import,properties
From: https://www.cnblogs.com/imgax/p/18260717

相关文章

  • springMvc 接收文件 MultipartFile
    使用SpringMVC 的controller中接收文件,如果只是接收一个文件,声明MultipartFile或者指定@RequestParam注解,参数(strReqBody和 images)与前端参数一致即可例:第一种方式publicvoiduploadImg(MultipartFileimg){}第二种public void uploadImg(SringstrReqBody,@Req......
  • spring cloud gateway根据版本过滤可用实例
    根据版本过滤实例:importcn.hutool.core.collection.CollUtil;importlombok.extern.slf4j.Slf4j;importorg.apache.commons.lang3.StringUtils;importorg.springframework.cloud.client.ServiceInstance;importorg.springframework.cloud.client.loadbalancer.Request;......
  • 基于springboot地方废物回收机构管理系统
    收藏关注不迷路||项目不适合可以浏览博主其他项目文章项目源码||毕设定制||远程支持||可联系博主---------------同类型文章链接--------------------------java项目设计专栏1项目基于springboot地方废物回收机构管理系统本系统的核心价值观在于为用户打造一个便......
  • Spring Boot 实现优雅的参数校验
    前言在日常的Web开发中,请求参数校验是一个非常基础且重要的环节。通过校验,我们可以确保每次接口请求中,入参的数据是有效、安全且合规的,避免数据库中出现脏数据。手动校验参数原始的手动校验参数代码如下:@PostMapping("/test")@ApiOperationLog(description="测试......
  • Spring常用注解,自动扫描装配Bean
    1引入context命名空间(在Spring的配置文件中),配置文件如下:Xml代码xmlns:context="http://www.springframework.org/schema/context"http://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-2.5.xsd......
  • 计算机Java项目|SpringBoot在线宠物用品交易网站
    作者主页:编程指南针作者简介:Java领域优质创作者、CSDN博客专家、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师主要内容:Java项目、Python项目、前端项目、人工智能与大数据、简历模板、学习资料、面试题库、技术互......
  • spring整合openAI大模型之Spring AI
    文章目录一、SpringAI简介1.什么是SpringAI2.SpringAI支持的大模型类型(1)聊天模型(2)文本到图像模型(3)转录(音频到文本)模型(4)嵌入模型(5)矢量数据库3.SpringAI版本二、SpringAI框架使用,对接OpenAI1.环境信息2.初始化3.配置文件(1)application.yml(2)pom文件4.聊天代码测试(1)聊天接......
  • 「Java开发指南」如何使用Spring注释器实现Spring控制器?(二)
    本教程将引导您使用SpringAnnotator实现Spring控制器,标准Java类被添加到搭建项目中,SpringAnnotatorSpring启用Java类。虽然本教程的重点是Spring控制器,但是SpringAnnotator也可以用于Spring服务、组件和存储库。在本教程中,您将学习如何:创建一个Java类将类配置为Spring控制......
  • springMVC域对象共享数据
    目录五、域对象共享数据5.1、使用ServletAPI向request域对象共享数据5.2、使用ModelAndView向request域对象共享数据5.3、使用Model向request域对象共享数据5.4、使用map向request域对象共享数据5.5、使用ModelMap向request域对象共享数据5.6Model、ModelMap、Map的关系5.7、向se......
  • Springboot+Vue+Mybatis-Plus+Easyexcel实现文件导入+导出的excel单元格下拉列表
    引言文件的导入与导出功能扮演着至关重要的角色,特别是在处理大量数据和复杂的表格时。通过整合SpringBoot、Vue、Mybatis-Plus和Easyexcel等先进技术,我们可以构建一个高效、灵活的文件处理系统。其中,Excel作为广泛使用的电子表格软件,其单元格下拉列表功能对于数据录入和校验......