SpringBoot项目发送邮件

举报
听风与他 发表于 2023/11/26 19:06:19 2023/11/26
【摘要】 SpringBoot项目发送邮件

📑前言

本文主要是【SpringBoot】——SpringBoot项目发送邮件的文章,如果有什么需要改进的地方还请大佬指出⛺️

🎬作者简介:大家好,我是听风与他🥇
☁️博客首页:华为云主页听风与他
🌄每日一句:狠狠沉淀,顶峰相见

SpringBoot项目发送邮件

springboot整合mail发送邮件

1.在pom.xml中导入邮件发送依赖

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

2.配置yml文件中mail的信息

  mail:
    host: smtp.163.com #邮箱采用的是网易邮箱,也可以更换其他的邮箱
    username: 15671190765@163.com
    password: xxxx  #配置邮箱的snmp验证信息

3.编写邮件发送类EmailSending

package com.emailsend.listener;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Component;

import java.util.Random;

@Component
public class EmailSending {

    @Autowired
    JavaMailSender sender;

    @Value("${spring.mail.username}")
    String username;
    private SimpleMailMessage createMessage(String title, String content, String email){
        SimpleMailMessage message = new SimpleMailMessage();
        message.setSubject(title);  //主题
        message.setText(content);   //内容
        message.setTo(email);       //发送目标邮箱
        message.setFrom(username);  //源发送邮箱
        return message;
    }
    public void sendMailMessage(String email){
        Random random = new Random();
        int code = random.nextInt(899999)+100000;
        SimpleMailMessage  message= this.createMessage("欢迎注册我们的网站","您的验证码为"+(code)+",有效时间三分钟,为了保障您的安全,请勿向他人泄露验证码信息。",email);
        if (message == null) return;
        sender.send(message);
    }
}

4.编写测试类EmailSendApplicationTests

package com.emailsend;

import com.emailsend.listener.EmailSending;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;


@SpringBootTest
class EmailSendApplicationTests {


    @Autowired
    private EmailSending emailSending;

    @Test
    void contextLoads() {
        emailSending.sendMailMessage("2482893650@qq.com");
    }

}

📑文章末尾

image.png

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。