SpringBoot整合邮件发送

1.申请邮箱权限

1.打开QQ邮箱,点击设置

在这里插入图片描述

2.选中账户

在这里插入图片描述

3.选择开启POP3/SMTP服务

注意:这里可能需要发送短信验证码,验证是否为本人
在这里插入图片描述

4.生成授权码

在这里插入图片描述

5.生成授权码

在这里插入图片描述
在这里插入图片描述

2.SpringBoot项目整合邮件

1.引入maven依赖

以下为邮件发送的依赖,需要通过请求触发邮件发送的话,还需要添加web的starter

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

2.配置邮件发送信息

  spring:
    mail:
      #smtp服务主机  qq邮箱则为smtp.qq.com
      host: smtp.163.com
      #服务协议
      protocol: smtp
      # 编码集
      default-encoding: UTF-8
      #发送邮件的账户
      username: xxxxxxx@163.com
      #授权码
      password: xxxxxx

3.编写一个controller

    @GetMapping
    @ApiOperation(value = "邮件发送")
    public R sendMail(){
        //创建简单邮件消息
        SimpleMailMessage message = new SimpleMailMessage();
        //谁发的
        message.setFrom("139xxxxx@qq.com");
        //谁要接收
        message.setTo("152xxxxx@163.com");
        //邮件标题
        message.setSubject("密码修改确认");
        //邮件内容
        message.setText("您正在操作修改密码");
        javaMailSender.send(message);
        return R.ok();
    }

4.发送邮件

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在 Spring Boot 中整合发送邮件可以使用 JavaMailSender 接口来实现。下面是一个简单的示例代码: 首先,确保在你的项目的 pom.xml 文件中添加了 Spring Boot 邮件依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> ``` 然后,在你的 application.properties 或 application.yml 文件中配置邮件相关的属性: ```properties # 邮件发送服务器主机名 spring.mail.host=your-smtp-server # 邮件发送服务器端口号 spring.mail.port=your-smtp-port # 邮件发送服务器用户名 spring.mail.username=your-username # 邮件发送服务器密码 spring.mail.password=your-password # 是否启用 SSL/TLS 安全连接 spring.mail.properties.mail.smtp.starttls.enable=true ``` 接下来,创建一个邮件服务类,用于发送邮件: ```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 { @Autowired private JavaMailSender javaMailSender; public void sendEmail(String to, String subject, String text) { SimpleMailMessage message = new SimpleMailMessage(); message.setTo(to); message.setSubject(subject); message.setText(text); javaMailSender.send(message); } } ``` 最后,在你的控制器或其他地方调用邮件服务类的 sendEmail 方法发送邮件: ```java 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 { @Autowired private EmailService emailService; @GetMapping("/send-email") public String sendEmail() { String to = "recipient@example.com"; String subject = "Test Email"; String text = "This is a test email sent from Spring Boot."; emailService.sendEmail(to, subject, text); return "Email sent successfully"; } } ``` 这样,当你访问 `/send-email` 路径时,就会发送一封测试邮件到指定的收件人邮箱。你可以根据实际需求修改相应的参数和邮件内容。记得将 `your-smtp-server`、`your-smtp-port`、`your-username` 和 `your-password` 替换为你的邮件服务器和账户信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SinceThenLater

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值