1.QQ邮箱发送邮件设置

首先登录QQ邮箱>>>登录成功后找到设置>>>然后找到邮箱设置>>>点击账户>>>找到POP3|SMTP服务>>>点击开启(开启需要验证,验证成功后会有一串授权码用于发送邮件使用)>>>验证成功 看图操作

授权码一定记得复制出来

**0.引入包**
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
**1.填写配置文件此处使用yml文件配置,使用yml配置记得注意格式哦,以免出错。**
spring:
mail:
default-encoding: UTF-8
host: smtp.qq.com
protocol: smtp
username: 邮箱账号
password: 服务授权码(不是QQ密码而是刚刚开启的POP3/SMTP服务 的授权码)
smtp:
auth: true
starttls:
enable: true
required: true
**2.新建类实现发送邮件**
import java.io.File;
import javax.mail.internet.MimeMessage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author ADMIN
* @date 2018年10月9日 下午3:59:59
* @version 1.0
*/
@RestController
public class MailController { @Autowired
JavaMailSender jms;
//发送文本消息,不带附件,内容是可以带html等标签之类的哦
@GetMapping("/send")
public String send(){
//建立邮件消息
SimpleMailMessage mainMessage = new SimpleMailMessage();
//发送者
mainMessage.setFrom("发送者邮箱(需要在配置文件中一致)");
//接收者
mainMessage.setTo("接收者邮箱");
//发送的标题
mainMessage.setSubject("发送的标题");
//发送的内容
mainMessage.setText("发送的内容");
jms.send(mainMessage);
return "true"; } /**
* 带附件发送,可多个附件 图片,doc都可以发送。
* ADMIN
* 2018年10月13日 下午12:31:13
*/
@GetMapping("/sendFile")
public void sendAttachmentsMail() { String [] fileArray={"C:\Users\Administrator\Desktop\图片\0.jpg","C:\Users\Administrator\Desktop\图片\aa.zip"}; MimeMessage message=jms.createMimeMessage();
try {
MimeMessageHelper helper=new MimeMessageHelper(message,true);
helper.setFrom("发送者邮箱(需要在配置文件中一致)");
helper.setTo("接收者邮箱");
helper.setSubject("发送标题");
helper.setText("发送内容");
//验证文件数据是否为空
if(null != fileArray){
FileSystemResource file=null;
for (int i = 0; i < fileArray.length; i++) {
//添加附件
file=new FileSystemResource(fileArray[i]);
helper.addAttachment(fileArray[i].substring(fileArray[i].lastIndexOf(File.separator)), file);
}
}
jms.send(message);
System.out.println("带附件的邮件发送成功");
}catch (Exception e){
e.printStackTrace();
System.out.println("发送带附件的邮件失败");
}
}
}
PS:网易邮箱发送和QQ邮箱是一样的,只需要修改配置文件的host,username,password三个参数。将host改成:smtp.163.com,用户名和密码改成网易邮箱对应的就行
原文:https://blog.csdn.net/qq_34523482/article/details/83037551

SpringBoot实现发送邮件的更多相关文章

  1. java springboot+maven发送邮件

    springboot+maven发送邮件 废话不多说直接上代码 1. pom 文件导入jar包 <!--邮件发送--> <dependency> <groupId> ...

  2. 使用 SpringBoot 配置发送邮件功能

    1.使用 SpringBoot 配置发送邮件功能 项目总体结构 用户表设计 SET FOREIGN_KEY_CHECKS=0; CREATE DATABASE sample; USE sample; ...

  3. springboot + rabbitmq发送邮件(保证消息100%投递成功并被消费)

    前言: RabbitMQ相关知识请参考: https://www.jianshu.com/p/cc3d2017e7b3 Linux安装RabbitMQ请参考: https://www.jianshu. ...

  4. (转载)springboot + rabbitmq发送邮件(保证消息100%投递成功并被消费)

    转载自https://www.jianshu.com/p/dca01aad6bc8 一.先扔一张图   image.png 说明: 本文涵盖了关于RabbitMQ很多方面的知识点, 如: 消息发送确认 ...

  5. springBoot 定时+发送邮件

    定时任务引入meaven依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifa ...

  6. SpringBoot配置发送邮件

    一.导入jar包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...

  7. springboot 测试发送邮件

    首先在pom文件引入依赖: <!--email依赖 --> <dependency> <groupId>org.springframework.boot</g ...

  8. SpringBoot中发送邮件服务

    .转载:http://www.ityouknow.com/springboot/2017/05/06/spring-boot-mail.html 简单使用 1.pom 包配置 <dependen ...

  9. springboot mail 发送邮件

    新开发了一个新的功能,要求使用java发送邮件,在此记录下代码,以方便后来者: 1.首先需要开通邮箱,开通smtp功能,我这边使用的是新浪邮箱,试过163.qq,比较麻烦,后来看到别人使用新浪,直接使 ...

  10. 使用SpringBoot + JavaMailSender 发送邮件报错 Mail server connection failed;Could not connect to SMTP host

    说明: 出于安全考虑,阿里云默认封禁 TCP 25 端口出方向的访问流量,无法在阿里云上的云服务器通过 TCP 25 端口连接外部地址. [官方提示]:如果您需要使用阿里云上的云服务器对外部发送邮件, ...

随机推荐

  1. MYSQL 之 JDBC(一): 数据库连接(一)通过Driver接口获取数据库连接

    通过Driver接口获取数据库连接 数据持久化 数据库存取技术分类 JDBC直接访问数据库 JDO技术 第三方O/R工具,如Hibernate,ibatis等JDBC是java访问数据库的基石 JDB ...

  2. java 基本语法(十四)Lambda (一)表达式

    1.Lambda表达式使用前后的对比:举例一: @Test public void test1(){ Runnable r1 = new Runnable() { @Override public v ...

  3. python网络编程05 /TCP阻塞机制

    python网络编程05 /TCP阻塞机制 目录 python网络编程05 /TCP阻塞机制 1.什么是拥塞控制 2.拥塞控制要考虑的因素 3.拥塞控制的方法: 1.慢开始和拥塞避免 2.快重传和快恢 ...

  4. python 面向对象专题(五):私有成员、类方法、静态方法、属性、isinstance/issubclass

    https://www.cnblogs.com/liubing8/p/11325421.html 目录 Python面向对象05 /私有成员.类方法.静态方法.属性.isinstance/issubc ...

  5. bzoj2160拉拉队排练

    bzoj2160拉拉队排练 题意: 给一个字符串,求最长的k个回文子串(此处回文子串长度必须为奇数)长度的乘积.字符串长度≤1000000 题解: 先用manacher预处理出第i个字符为中心的最长回 ...

  6. 通过server酱实现定时推送天气情况,再不用担心你的糊涂蛋女友忘带伞了~~

    昨天菜鸟小白给大家留了一个课后作业,如何实现天气的定时推送.有没有小伙伴做出来答案呢?今天菜鸟小白给大家分享我的实现方式吧.这个是我今天整的程序流程图,昨天我们还只是实现了中间的通过和风天气API获取 ...

  7. Illegal instant due to time zone offset transition (Asia/Shanghai)_夏令时问题

    项目报错信息: Connot parse "1991-04-14",illegal instant due to time zone offset transition(Asia/ ...

  8. GitHub 热点速览 Vol.29:程序员资料大全

    作者:HelloGitHub-小鱼干 摘要:有什么资料比各种大全更吸引人的呢?先马为敬,即便日后"挺尸"收藏夹,但是每个和程序相关的大全项目都值得一看.比如国内名为小傅哥整理的 J ...

  9. git 缓存密码 unable to access... 403错误

    如果输入了 git config credential.helper 命令之后还是出现了osxkeychain, store 或者 cache 等,说明 git 的配置还是没有被清空,我参考了stac ...

  10. lua判断字符串包含另一个字符串

    lua判断字符串包含另一个字符串 --string.find("元字符串","模式字符串") 如下: print(string.find("CCBWe ...