第十篇:SpringBoot 2.x发送邮件

简介: 相信大家之前都写过发送邮件的例子,还记得被密密麻麻的代码包围的恐惧吗?今天介绍一下SpringBootMail来发送邮件,体验五六行代码就完成功能的快感!pom.

相信大家之前都写过发送邮件的例子,还记得被密密麻麻的代码包围的恐惧吗?今天介绍一下SpringBootMail来发送邮件,体验五六行代码就完成功能的快感!

pom.xml

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

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

接着创建一个邮件发送类

MailController.java

package com.priv.gabriel.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created with Intellij IDEA.
 *
 * @Author: Gabriel
 * @Date: 2018-10-23
 * @Description:
 */
@RestController
public class MailController {

    @Autowired
    JavaMailSender jms;

    @RequestMapping("/send")
    public String send(){
        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom("814180366@qq.com");
        message.setTo("youarephoenix@163.com");
        message.setSubject("我来自SpringBoot");
        message.setText("这是一封测试邮件,感谢您的查看");
        jms.send(message);
        return "发送成功!";
    }
}

怎么样,就是简单设置了一下发送者和接受者以及邮件的内容,当然了还需要在配置文件中设置一下发送者的信息

application.properties

spring.mail.default-encoding=utf-8
spring.mail.host=smtp.qq.com #qq邮箱的smtp地址,如果是其他邮箱则切换成对应的stmp地址
spring.mail.password=xxxxxxxx #如果是qq邮箱则需要把这个切换授权码
spring.mail.port=25
spring.mail.protocol=smtp
spring.mail.username=gabriel

最后访问一下


img_183cad291a08f55ac39a76e9e1cf1b92.png
1.png

总结一下,发送邮件在整合了mail之后的springboot中已经变成相当简单的一件事情了,但在邮箱的选取上最好还是避免使用QQ邮箱,用其他邮箱发送能避免相当多的问题

项目下载地址

目录
相关文章
|
7月前
|
安全 JavaScript Java
SpringBoot实现定时发送邮件
SpringBoot实现定时发送邮件
91 0
|
7月前
|
Java Spring
Spring boot项目如何发送邮件
Spring boot项目如何发送邮件
55 2
|
7月前
|
Java
Springboot如何发送邮件
Springboot如何发送邮件
|
7月前
|
消息中间件 JSON Java
如何利用springboot + rabbitmq发送邮件?
RabbitMQ相关知识请参考: RabbitMQ消息确认、消息持久化等核心知识总结 - 简书
65 2
|
7月前
|
安全 Java 数据安全/隐私保护
SpringBoot+Email发送邮件
邮件通知是现代应用中常见的一种通信方式,特别是在需要及时反馈、告警或重要事件通知的场景下。Spring Boot提供了简单而强大的邮件发送功能,使得实现邮件通知变得轻而易举。本文将研究如何在Spring Boot中使用JavaMailSender实现邮件发送,以构建一个可靠的通知体系。
266 1
SpringBoot+Email发送邮件
|
7月前
|
Java
【Java专题_03】使用springboot发送邮件
【Java专题_03】使用springboot发送邮件
67 2
|
Java
SpringBoot项目发送邮件
SpringBoot项目发送邮件
83 1
|
Java 测试技术 Maven
Spring Boot发送邮件
Spring Boot发送邮件
|
JavaScript Java Spring
一张思维导图带你学会使用SpringBoot中的Schedule定时发送邮件
一张思维导图带你学会使用SpringBoot中的Schedule定时发送邮件
165 0
|
Java 容器
JavaMailSender发送邮件(整合SpringBoot、解决空指针异常问题)
一、邮箱开启SMTP服务 以qq邮箱为例 进入邮箱设置页面后选择账户