Hutool工具类之发送邮件

文章目录

  • 一、引入依赖
  • 二、邮件服务器配置
  • 三、发送邮件
    • 1、发送普通文本邮件,最后一个参数可选是否添加多个附件
    • 2、发送HTML格式的邮件并附带附件,最后一个参数可选是否添加多个附件
    • 3、群发邮件,可选HTML或普通文本,可选多个附件

一、引入依赖

<dependency>
	<groupId>com.sun.mail</groupId>
	<artifactId>javax.mail</artifactId>
	<version>1.6.2</version>
</dependency>

二、邮件服务器配置

   在classpath(在标准Maven项目中为src/main/resources)的config目录下新建mail.setting文件,最小配置内容如下,在此配置下,smtp服务器和用户名都将通过from参数识别:

# 发件人(必须正确,否则发送失败)
from = [email protected]
# 密码(注意,某些邮箱需要为SMTP服务单独设置密码,详情查看相关帮助)
pass = q1w2e3

  有时候一些非标准邮箱服务器(例如企业邮箱服务器)的smtp地址等信息并不与发件人后缀一致,端口也可能不同,此时Hutool可以提供完整的配置文件:

完整配置

# 邮件服务器的SMTP地址,可选,默认为smtp.<发件人邮箱后缀>
host = smtp.yeah.net
# 邮件服务器的SMTP端口,可选,默认25
port = 25
# 发件人(必须正确,否则发送失败)
from = [email protected]
# 用户名,默认为发件人邮箱前缀
user = hutool
# 密码(注意,某些邮箱需要为SMTP服务单独设置授权码,详情查看相关帮助)
pass = q1w2e3

三、发送邮件

1、发送普通文本邮件,最后一个参数可选是否添加多个附件

MailUtil.send("[email protected]", "测试", "邮件来自Hutool测试", false);

2、发送HTML格式的邮件并附带附件,最后一个参数可选是否添加多个附件

MailUtil.send("[email protected]", "测试", "

邮件来自Hutool测试

"
, true, FileUtil.file("d:/aaa.xml"));

3、群发邮件,可选HTML或普通文本,可选多个附件

ArrayList<String> tos = CollUtil.newArrayList(
	"[email protected]", 
	"[email protected]", 
	"[email protected]", 
	"[email protected]");
	
MailUtil.send(tos, "测试", "邮件来自Hutool群发测试", false);

发送邮件非常简单,只需一个方法即可搞定其中按照参数顺序说明如下:

  1. tos: 对方的邮箱地址,可以是单个,也可以是多个(Collection表示)
  2. subject:标题
  3. content:邮件正文,可以是文本,也可以是HTML内容
  4. isHtml: 是否为HTML,如果是,那参数3识别为HTML内容
  5. files: 可选:附件,可以为多个或没有,将File对象加在最后一个可变参数中即可

你可能感兴趣的:(工具使用心得,hutool)