Springboot2.x结合FreeMarker使用模板定制属于自己的邮件,瞬间是不是觉得很炫酷啊,那还不赶快去试试看啊
1、添加相关依赖
- 1.1、使用Maven,在pom.xml添加如下依赖:
<!-- 邮件所需依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<!-- Spring Boot Freemarker 依赖,发送HTML格式的邮件的方式 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
- 1.2、使用Gradle,则在 build.gradle 添加依赖:
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-freemarker'
implementation 'org.springframework.boot:spring-boot-starter-mail'
//... 其他依赖库
}
2、application.yml 配置
#其他配置信息
spring:
#其他配置信息
freemarker:
suffix: .ftl
template-loader-path:
- classpath:/templates
cache: false
charset: UTF-8
content-type: text/html
mail:
host: smtp.163.com
username: #添加您自己163邮箱
password: #授权第三方登录的授权码 不是邮箱密码哦 别弄混了
protocol: smtp
properties.mail.smtp.auth: true
properties.mail.smtp.port: 994 #465或者994
#properties.mail.display.sendmail: Javen
#properties.mail.display.sendname: Spring Boot Guide Email
properties.mail.smtp.starttls.enable: true
properties.mail.smtp.starttls.required: true
properties.mail.smtp.ssl.enable: true
default-encoding: utf-8
from: #添加您自己163邮箱
3、编写MailService服务
package cn.qiucode.blog.service;
import cn.qiucode.blog.entity.Message;
/**
* @program: qiucode-blog
* @description: 发送邮箱sevice类
* @author: 上官江北
* @create: 2021-04-17 20:02
*/
public interface MailService {
/**
* 使用模板发送邮件
* @param message 评论或留言对象
* @param title 邮件标题
* @param templateName 模板名称
*/
public void sendMessageMail(Message message, String title, String templateName);
}