springboot实现邮件发送

1.以QQ邮箱为例

(1)打开qq邮箱首页,点击设置 

(2)进入设置,点击账户

 (3)滚轮往下滑,找到POP3/.....服务,将第一个服务开启即可 

(4)通过短信验证或者密保开启,会得到一个授权码,记得复制授权码,一会还得用。 

2.pom文件导入依赖

        <!--邮件发送-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

3.yml文件中配置

        修改username和password的值即可

spring:
  #邮箱基本配置
  mail:
    #配置smtp服务主机地址
    # qq邮箱为smtp.qq.com          端口号465或587
    # sina    smtp.sina.cn
    # aliyun  smtp.aliyun.com
    # 163     smtp.163.com       端口号465或994
    host: smtp.qq.com
    #发送者邮箱(记得修改此处)
    username: XXX@qq.com
    #配置密码,注意不是真正的密码,而是刚刚申请到的授权码
    password: 刚刚复制的授权码剪切到此处
    #端口号465或587
    port: 587
    #默认的邮件编码为UTF-8
    default-encoding: UTF-8
    #其他参数
    properties:
      mail:
        #配置SSL 加密工厂
        smtp:
          ssl:
            #本地测试,先放开ssl
            enable: false
            required: false
          #开启debug模式,这样邮件发送过程的日志会在控制台打印出来,方便排查错误
        debug: true

4.编写发送邮件方法

(1)首先其中方法的三个参数分别表示为:

        receive 邮件接收人 (字符串)
        title 邮件标题 (字符串)
        text 邮件主体内容 (字符串)

(2)其次只需要修改发信人的邮箱即可:

        mimeMessageHelper.setFrom("XXX@qq.com");

@RestController
public class TestController { 
    @Resource
    private JavaMailSenderImpl javaMailSender;

    /**
     * 编写发送邮件方法
     * @param receive 邮件接收人 (字符串)
     * @param title 邮件标题 (字符串)
     * @param text 邮件主体内容 (字符串)
     */
    @PostMapping("/sendMail")
    public void sendMail(String receive, String title, String text){
        try {
            // true 代表支持复杂的类型
            MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(javaMailSender.createMimeMessage(),true);
            // 邮件发信人
            mimeMessageHelper.setFrom("XXX@qq.com");
            // 邮件收信人  1或多个
            mimeMessageHelper.setTo(receive.split(","));
            // 邮件主题
            mimeMessageHelper.setSubject(title);
            // 邮件内容
            mimeMessageHelper.setText(text);
            // 邮件发送时间
            mimeMessageHelper.setSentDate(new Date());

            //发送邮件
            javaMailSender.send(mimeMessageHelper.getMimeMessage());
            System.out.println("发送邮件成功:"+receive+"->"+text);

        } catch (MessagingException e) {
            e.printStackTrace();
            System.out.println("发送邮件失败:"+e.getMessage());
        }
    }
}

5.发送请求访问,测试即可。

在此,祝各位帅哥美女,步步高升,一帆风顺!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个用于创建独立的、基于Spring的应用程序的框架。它提供了许多开箱即用的功能,包括邮件发送。下面是使用Spring Boot实现邮件发送的步骤: 1. 添加依赖:在项目的pom.xml文件中添加Spring Boot的邮件依赖,例如: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> ``` 2. 配置邮件信息:在application.properties或application.yml文件中配置邮件服务器的相关信息,例如: ```properties spring.mail.host=smtp.example.com spring.mail.port=587 spring.mail.username=your-email@example.com spring.mail.password=your-email-password spring.mail.properties.mail.smtp.auth=true spring.mail.properties.mail.smtp.starttls.enable=true ``` 3. 创建邮件服务类:创建一个邮件服务类,用于发送邮件。可以使用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 { @Autowired private JavaMailSender mailSender; public void sendEmail(String to, String subject, String text) { SimpleMailMessage message = new SimpleMailMessage(); message.setTo(to); message.setSubject(subject); message.setText(text); mailSender.send(message); } } ``` 4. 调用邮件服务类:在需要发送邮件的地方调用邮件服务类的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("/sendEmail") public String sendEmail() { emailService.sendEmail("recipient@example.com", "Test Email", "This is a test email."); return "Email sent successfully."; } } ``` 以上就是使用Spring Boot实现邮件发送的基本步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值