前言

实现发送邮件功能主要有以下几步

引入依赖spring-boot-start-mail
用SpringBoot 自动配置MailSenderAutoConfiguration
定义MailProperties内容,配置在application.yml中(也可以用application.properties)
自动装配JavaMailSender
测试邮件发送

导入依赖

新建springboot项目
在pom.xml文件中导入以下依赖

<!--发送邮件需要的包--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>Mai

配置文件

导入依赖后需要配置一个叫做MailSenderAutoConfiguration的类,可以配置的参数有port(端口号)、host(主机名)、username(smtp的用户,SMTP是一种提供可靠且有效的电子邮件传输的协议)、password
可以在resources目录下的配置文件application.properties中配置

#使用qq邮箱,邮箱后缀就是@qq.com,如果是163的就是@163.com
spring.mail.username=xxxxxxxxx@qq.com
spring.mail.password= 略
#如果是qq邮箱,就是smtp,其他邮箱只需改动后缀qq.com
spring.mail.host=smtp.qq.com
# qq需要配置ssl,开启加密验证,如果是其他邮箱就不用
spring.mail.properties.mail.smtp.ssl.enable=true

配置password不是直接填写邮箱密码,需要获取授权码,以避免直接将自己的邮箱密码暴露出来

获取授权码
以qq为例,进入qq邮箱,进入设置下的账户页面

然后下滑找到服务

将授权码填入spring.mail.password,配置就基本完成

编写测试代码

开始编写测试类
编写测试类
发送简单的信息

@SpringBootTest
classSpringbootTaskApplicationTests{@Autowired//自动装配JavaMailSenderImpl  mailSender;//实施邮件发送的对象@TestpublicvoidcontextLoad(){//邮件设置1:一个简单的邮件SimpleMailMessage message=new SimpleMailMessage();message.setSubject("通知-明天开会");//设置标题message.setText("今晚7:30开会");//填入文本内容message.setTo("xxxxx@qq.com");//接收邮件的一方,可以设置成自己的邮箱测试message.setFrom("xxxxxxx@qq.com");//发送邮件的一方邮箱mailSender.send(message);//发送}}

将邮件发送方和接收方都设置成自己,直接右键run 测试,发现文件发送成功,自己接受到了邮件

发送复杂一点的邮件

@Test
publicvoidcontextLoad2()throwsMessagingException{MimeMessage     mimeMessage=mailSender.createMimeMessage();MimeMessageHelper  mimeMessageHelper= new   MimeMessageHelper(mimeMessage,true);//MimeMessageHelper  可以设置发送附件mimeMessageHelper.setSubject("明天开会通知");mimeMessageHelper.setText("<bstyle='color:blue'>明天7点开会</b>",true);//这里设置true可以读取html语言,为文本设置样式,也可不填//发送附件,这里是附加了两张图片mimeMessageHelper.addAttachment("1.jpg",newFile("C:UserslenovoDesktop团子.jpg"));//前面是设置文件的名称,后面是文件的绝对路径,也可以是相对路径mimeMessageHelper.addAttachment("2.jpg",newFile("C:UserslenovoDesktop璐璐.jpg"));mimeMessageHelper.setTo("xxxxxxx@qq.com");mimeMessageHelper.setFrom("xxxxxxxx@qq.com");mailSender.send(mimeMessage);
}

与之前一样测试,发送成功

最后

感谢你看到这里,看完有什么的不懂的可以在评论区问我,觉得文章对你有帮助的话记得给我点个赞,每天都会分享java相关技术文章或行业资讯,欢迎大家关注和转发文章!

spring boot 邮件端口_不会吧,SpringBoot还能发送邮件发送邮件?快来看看如何操作吧...相关推荐

  1. spring boot 邮件端口_不会吧,SpringBoot还能发送邮件发送邮件?快来看看如何操作吧

    前言 实现发送邮件功能主要有以下几步 引入依赖spring-boot-start-mail用SpringBoot 自动配置MailSenderAutoConfiguration定义MailProper ...

  2. spring boot 邮件端口_1 分钟教会你用 Spring Boot 发邮件

    Spring Boot 提供了一个发送邮件的简单抽象,使用的是下面这个接口. org.springframework.mail.javamail.JavaMailSender Spring Boot ...

  3. spring boot 邮件端口_springboot集成qq邮件发送功能

    在很多业务中都存在着发送邮件的功能,邮件在国内不是经常使用但是在国外非常常用,废话少说,上代码! 首先先得开通smtp功能 进入qq邮箱>设置>账户>开启 获取授权码(待会要用) p ...

  4. (10)Spring Boot修改端口号【从零开始学Spring Boot】

    Spring boot 默认端口是8080,如果想要进行更改的话,只需要修改applicatoin.properties文件,在配置文件中加入: server.port=9090 常用配置: #### ...

  5. spring boot构建基础版web项目(一)springboot、thymeleaf控制层基础构

    原文作者:弥诺R 原文地址:http://www.minuor.com/147852147/article 转载声明:转载请注明原文地址,注意版权维护,谢谢! 写前说明 根据个人在各篇博文中看到的信息 ...

  6. Spring Boot 2.1.5(25)---SpringBoot基于WebFlux注解

    Spring Boot 2.1.5(25)---SpringBoot基于WebFlux注解 Spring 5通过引入一个名为Spring WebFlux的全新反应框架,采用了反应式编程范式. Spri ...

  7. STS创建Spring Boot项目实战(Rest接口、数据库、用户认证、分布式Token JWT、Redis操作、日志和统一异常处理)

    STS创建Spring Boot项目实战(Rest接口.数据库.用户认证.分布式Token JWT.Redis操作.日志和统一异常处理) 1.项目创建 1.新建工程 2.选择打包方式,这边可以选择为打 ...

  8. spring boot自测_将测微仪与Spring Boot 2一起使用

    spring boot自测 这是快速入门,介绍了如何使用出色的Micrometer库来检测基于Spring Boot 2的应用程序并在Prometheus中记录指标 介绍 Micrometer在不同监 ...

  9. spring boot web项目_阿里技术专家带你使用Spring框架快速搭建Web工程项目

    点击上方 "程序员小乐"关注, 星标或置顶一起成长 第一时间与你相约 每日英文 We all have a past. It's how you deal with it. 每个人 ...

  10. java 发送邮件_Spring Boot (十二):Spring Boot 邮件服务

    如果我的文章对您有帮助,请关注支持下作者的公众号:极客挖掘机,获取最新干货推送:) 最早我们发邮件的时候是使用 JavaMail 来发送邮件,而在 Spring Boot 中, Spring Boot ...

最新文章

  1. 销量过亿的《剑指0ffer》题目和答案电子书 (附下载)
  2. python pprint用法_Python中使用pprint函数进行格式化输出的教程
  3. Spring Boot处理静态资源(自定义资源映射)
  4. 神经网络weight参数怎么初始化
  5. 新的一年,对产品和产品经理的感悟
  6. java 数组去重_java面试题:数组去重
  7. open() 函数以 w+ 模式打开文件
  8. IBM云计算架构师:Mesos新功能以及roadmap简介
  9. 服务器显示转速负数,Moldflow使用常见问题及解决方案
  10. 大前端技术选型 Native原生iOS, Android, React-Native, Flutter, 微信小程序, HTML5
  11. matlab2013基础教程,Matlab2013a教程
  12. linux视频补帧,SVP补帧软件最新版-SVP补帧软件免费版-QQ下载站
  13. 盘点|国产无线通信模块厂,赶紧收藏!
  14. STM32F030F4驱动TIM1637数码管芯片
  15. Windows Azure 虚机密码忘记处理
  16. 电动汽车充电站的最优选址matlab程序
  17. send函数和recv函数
  18. 敬告青年---陈独秀
  19. mW和dBm的换算公式
  20. VPO微珀宣布完成千万人民币Pre-A融资,专注电子烟场景化消费市场...

热门文章

  1. 让人等不及的潮州小吃“来不及”
  2. [Java] 固定队列的实现思路
  3. kmeans算法c语言代码,ML算法与代码实现——Kmeans(案例)
  4. fetch jsonp连接mysql_后端接口开发:json,jsonp,restful
  5. [2018.11.05 T3] 零食
  6. vue3中获取dom元素和操作
  7. vue的父子组件属性绑定传值
  8. rsync结合inotify工具实现实时同步传输文件
  9. 用计算机模拟实验技术路线,自然科学基金申请书模板
  10. c语言qsort函数对结构体的一级排序,sort和qsort函数对结构体的二级排序