发送邮件 Spring Email

开启自己邮箱的POP3/SMTP服务

导入spring mail 依赖

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId><version>2.6.3</version>
</dependency>

邮箱参数配置 applicateion.properties

#MailProperties
spring.mail.host=smtp.sina.com //新浪   对应邮件服务厂家域名  QQ --- smtp.qq.com
spring.mail.port=465
spring.mail.username=xxxxxxxxxxxx
spring.mail.password=xxxxxxxxxxx //若出现连接错误,可替换为 认证码,去服务厂家获取
#ssl安全连接
spring.mail.properties.mail.smtp.ssl.enable=true

邮件工具类

/*** @Author 孑然** 发送邮件类*/
@Component
public class MailClient {public static final Logger logger = LoggerFactory.getLogger(MailClient.class);@Resourceprivate JavaMailSender mailSender;@Value("${spring.mail.username}")private String from;/*** 发送邮件* @param to 发送目标* @param subject 邮件标题* @param content 邮件内容*/public void sendMail(String to, String subject, String content) {try {// 构建邮件MimeMessage message = mailSender.createMimeMessage();//使用邮件助手构建邮件内容MimeMessageHelper helper = new MimeMessageHelper(message);helper.setFrom(from);helper.setTo(to);helper.setSubject(subject);helper.setText(content, true);//true代表可发送html格式//发送邮件mailSender.send(helper.getMimeMessage());} catch (MessagingException e) {logger.error("发送邮件失败" + e.getMessage());}}
}

测试发送邮件 文本邮件和html邮件

/*** @Author 孑然*/
@SpringBootTest
public class MailTest {@Autowiredprivate MailClient mailClient;/*** Thymeleaf模板引擎*/@Resourceprivate TemplateEngine templateEngine;@Testpublic void testTextMail(){mailClient.sendMail("xxxxxxx@qq.com", "TEST", "你好啊!");}@Testpublic void testHtmlMail() {//向html中传入数据Context context = new Context();context.setVariable("username", "sunday");//构建邮件内容String content = templateEngine.process("/mail/demo", context);System.out.println(content);//发送邮件mailClient.sendMail("xxxxxxx@qq.com", "html邮件", content);}}

/static/mail/demo 目录下的 demo.html

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>邮件示例</title>
</head>
<body><p>欢迎你,<span style="color: red" th:text="${username}"></span>!</p>
</body>
</html>

发送邮件功能:使用Spring Email、邮件工具类、使用Thymeleaf模板引擎 发送html邮件相关推荐

  1. Spring 的优秀工具类盘点---转

    第 1 部分: 文件资源操作和 Web 相关工具类 http://www.ibm.com/developerworks/cn/java/j-lo-spring-utils1/ 文件资源操作 文件资源的 ...

  2. Spring 的优秀工具类盘点

    Spring 的优秀工具类盘点---转 第 1 部分: 文件资源操作和 Web 相关工具类 http://www.ibm.com/developerworks/cn/java/j-lo-spring- ...

  3. SpringBoot中操作spring redis的工具类

    场景 SpringBoot+Vue+Redis实现前后端分离的字典缓存机制: https://blog.csdn.net/badao_liumang_qizhi/article/details/108 ...

  4. Spring源码工具类ClassUtils之isAssignable

    Spring源码工具类ClassUtils之isAssignable 文章目录 Spring源码工具类ClassUtils之isAssignable 一.isAssignable 二.代码示例 一.i ...

  5. SpringBoot框架+Thymeleaf模板引擎实现发送HTML格式邮件(可带附件)

    spring-boot-mail 项目结构 1.Maven工程依赖坐标 注意:SpringBoot版本需为2.x 若spring boot版本为1.x, <?xml version=" ...

  6. Java Mail+Thymeleaf模板引擎实现发送HTML格式邮件

    Java Mail+Thymeleaf模板引擎实现发送HTML格式邮件 基于Spring boot 1.5,Spring boot 2.x请使用Spring boot mail 1.依赖坐标 // b ...

  7. Spring Boot集成Thymeleaf模板引擎

    一.Thymeleaf 模板介绍 Spring Boot 推荐使用Thymeleaf 来代替传统开发中的JSP,那么什么是Thymeleaf 模板引擎呢?下面就来简单的介绍一下. Thymeleaf ...

  8. Spring MVC应用程序中的Thymeleaf模板布局,无扩展

    在使用JSP / JSTL和Apache Tiles几年之后,我开始为我的Spring MVC应用程序发现Thymeleaf. Thymeleaf是一个非常出色的视图引擎,尽管目前缺乏良好的Intel ...

  9. Spring Boot 最佳实践(四)模板引擎Thymeleaf集成

    ## 一.Thymeleaf介绍 Thymeleaf是一种Java XML / XHTML / HTML5模板引擎,可以在Web和非Web环境中使用.它更适合在基于MVC的Web应用程序的视图层提供X ...

最新文章

  1. Java jdk 安装笔记
  2. linux常用核心命令大全(只写程序员常用的)
  3. FastDFS服务重启
  4. 前端学习(2454):用户登录
  5. 身体曲线如何反映出健康
  6. Python | 7招教你识别一个网站是否是Django后台
  7. 网页撤销后ubuntu本地撤销
  8. Python 字符串类型格式化
  9. 【GitHub】cmder下载地址
  10. MATLAB代码:全面ADMM算法代码,实现了三种ADMM迭代方式 参考文档:《基于串行和并行ADMM算法的电_气能量流分布式协同优化_瞿小斌》
  11. win10系统 DNS服务器,dns出错?Win10系统dns服务器未响应的修复方法
  12. tcl c语言笔试题,TCL 2019校园招聘备战-求职应聘指南(笔试真题面试经验).pdf
  13. 简单,充实,幸福——2015-2016年终总结
  14. 微信内分享网页自定义标题,图片,描述
  15. linux复制后权限变化,学霸Linux基础命令吐血总结,给你当新华字典用
  16. uniapp文档常用整理
  17. python国际象棋ai程序_只需五步!手把手教你搭建国际象棋AI机器人
  18. php google地图,google地图 标记地图代码
  19. fgets和fputs的使用
  20. 【转】Fluent学习笔记(10)-----多相流模型

热门文章

  1. ​力扣解法汇总954-二倍数对数组
  2. 阿里云服务器域名备案、域名解析、以及解析域名到服务器指定端口号
  3. 虚拟服务器共享文件夹禁用,虚拟机共享文件夹禁用,vm虚拟机共享文件夹
  4. windows mysql提示:1045 access denied for user 'root'@'localhost' using password ye
  5. Linux(Ubuntu)下WiFi网卡(intel ax201)驱动与Nvidia显卡驱动冲突的解决办法
  6. win10一直卡在欢迎界面进不去怎么办
  7. SpringCloud与微服务Ⅴ --- Eureka服务注册与发现
  8. CSS3居中的几种方法
  9. 私人 — 在 Apple 商务管理或 Apple 校园教务管理上作为自定 App 提供
  10. 从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t