simple-starter-email
# 简介
提供发送邮件使用
# 引入依赖
<dependencies>
<dependency>
<groupId>cn.iosd</groupId>
<artifactId>simple-starter-email</artifactId>
<version>Version</version>
</dependency>
</dependencies>
1
2
3
4
5
6
7
2
3
4
5
6
7
# 配置项
simple:
email:
config:
##SMTP服务器host
smtpHost:
##SMTP服务器端口号
smtpPort:
##发件人邮箱用户名
username:
##发件人邮箱密码
password:
##发件人邮箱地址
fromEmail:
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 功能项
# 使用示例
# 基础使用-工程配置项
注入服务类
@Autowired
private EmailService emailService;
1
2
2
发送电子邮件
@Operation(summary = "发送电子邮件")
@GetMapping(value = "/sendEmail")
public Response<?> sendEmailSinglePerson(@ParameterObject SendEmailVo vo) throws MessagingException, IOException {
emailService.sendEmail(vo.getToEmails(), vo.getCcEmails(), vo.getBccEmails(), vo.getSubject(), vo.getContent(), vo.getIsHtml(), vo.getAttachments(), vo.getInlineImages());
return Response.ok();
}
1
2
3
4
5
6
2
3
4
5
6
发送参数
@Data
public class SendEmailVo {
@Schema(description = "收件人的电子邮件地址", example = "testxxx@qq.com,testxxx@foxmail.com")
private List<String> toEmails;
@Schema(description = "抄送人的电子邮件地址列表", example = "testyyy@qq.com,testyyy@foxmail.com")
private List<String> ccEmails;
@Schema(description = "附件文件的路径列表", example = "E:\\temp\\新建文本文档.txt")
private List<String> attachments;
@Schema(description = "邮件主题")
private String subject;
@Schema(description = "邮件内容")
private String content;
@Schema(description = "指示邮件内容是否为HTML格式", defaultValue = "false")
private Boolean isHtml;
@Schema(description = "密送人的电子邮件地址列表", example = "testzzz@qq.com")
private List<String> bccEmails;
@Schema(description = "内联图片的路径和CID映射", hidden = true)
Map<String, String> inlineImages;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 配置使用
指:发送邮件时配置发件人邮件配置参数
EmailService使用下列方法
/**
* 发送电子邮件方法
*
* @param toEmails 收件人的电子邮件地址列表
* @param ccEmails 抄送人的电子邮件地址列表
* @param bccEmails 密送人的电子邮件地址列表
* @param subject 邮件主题
* @param content 邮件内容
* @param isHtml 指示邮件内容是否为HTML格式
* @param attachments 附件文件的路径列表
* @param inlineImages 内联图片的路径和CID映射
* @param emailConfigVo 发件人邮件配置参数
* @throws MessagingException 发送邮件时可能抛出的异常
* @throws IOException 读取附件文件时可能抛出的异常
*/
public void sendEmail(List<String> toEmails, List<String> ccEmails, List<String> bccEmails, String subject, String content, boolean isHtml, List<String> attachments, Map<String, String> inlineImages, EmailConfigVo emailConfigVo)
throws MessagingException, IOException {
Session session = createSession(emailConfigVo);
Message message = createMessage(session, toEmails, ccEmails, bccEmails, subject, content, isHtml, attachments, inlineImages, emailConfigVo.getFromEmail());
Transport.send(message);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
上次更新: 2024/03/25, 02:28:08