SpringBoot实现邮件发送

首先创建一个邮箱账号,建议@126.com,@163.com,@qq.com 都可以

开启smtp,以下是使用图解:

 

 

 

 

 

 创建SpringBoot项目导入依赖

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

application.properties文件中配置:

spring.mail.default-encoding=UTF-8
spring.mail.host=smtp.163.com
#发送者的邮箱密码
spring.mail.password=xxxxx
#端口
spring.mail.port=25
#协议
spring.mail.protocol=smtp
#发送者的邮箱账号
spring.mail.username=xxxxxxx@163.com
server.port=8081

 以文本的形式发送:

package com.example.demo;

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.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author
 * @site
 * @company
 * @create 2020-03-07 1:06
 */
@RestController
public class MailController {

    @Autowired
    JavaMailSender jsm;

    @Value("${spring.mail.username}")
    private String username;

    @GetMapping("/send")
    public String send(){
        //建立邮箱消息
        SimpleMailMessage message = new SimpleMailMessage();
        //发送者
        message.setFrom(username);
       //接收者
        message.setTo("1352192872@qq.com");
       //发送标题
        message.setSubject("测试");
        //发送内容
        message.setText("测试数据");
        jsm.send(message);
        return "1";
    }
}

 结果:

发送方:

 

 接收方:

 

posted @ 2020-03-07 01:53  chenjiahao  阅读(2673)  评论(1编辑  收藏  举报