springboot2.0发送邮件。QQ、网易【亲测有效】

目的:springboot2.0-发送邮箱。QQ、网易邮箱

 第一步:添加依赖【网上都是说添一种依赖这是错误的,会出现注入的时候为null】

<!--邮箱依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
            <version>4.3.7.RELEASE</version>
        </dependency>

第二步、配置application.yml 

注意:下面的password,并不是你的邮箱登陆密码,而是

2-1:126邮箱配置

spring:
     #邮箱配置
    mail:
        host: smtp.126.com
        #发送者邮箱账号
        username: xdxBlog@126.com
        #发送者密钥
        password: xxxxxxxx
        default-encoding: utf-8
        port: 465
        properties:
            mail:
                debug:
                    true
                smtp:
                    socketFactory:
                        class: javax.net.ssl.SSLSocketFactory

2-2:qq邮箱配置

spring:
     #邮箱配置
    mail:
        host: smtp.qq.com
        #发送者邮箱账号
        username: 11111111@qq.com
        #发送者密码
        password: xxxxxxx
        default-encoding: utf-8
        port: 465
        properties:
            mail:
                debug:
                    true
                smtp:
                    socketFactory:
                        class: javax.net.ssl.SSLSocketFactory

第三步:开启你的 POP3/SMTP/IMAP

以网易邮箱为例(自行去百度 QQ邮箱的这个很简单就百度的到)

 第四步:测试

package com.xdx97.backstage.utils;

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;

//发送邮箱
@RestController
public class SendMail {

    @Autowired
    private JavaMailSender jms; //自动注入的Bean

    @RequestMapping(value = "/bb")
    public String sendMail(){
//        JavaMailSenderImpl jms = new JavaMailSenderImpl();
        //建立邮件消息
        SimpleMailMessage mainMessage = new SimpleMailMessage();
        //发送者
        mainMessage.setFrom("xdxBlog@126.com");
        //接收者
        mainMessage.setTo("1455465841@qq.com");
        //发送的标题
        mainMessage.setSubject("用来测试的");
        //发送的内容
        mainMessage.setText("这是邮件");
        jms.send(mainMessage);
        return "1";
    }

}

 

注意:

在这里你可能遇到这么一个错   Couldn't connect to host, port: localhost, 25; timeout -1;   

参考:https://blog.csdn.net/Tomwildboar/article/details/83028226

附邮箱端口大全:https://blog.csdn.net/qq510304723/article/details/50172111#commentBox

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值