EmailUtils JavaMail邮件发送工具
邮件发送工具的老搭档,非 EmailUtils
莫属。它是用 Java 写的工具类,底层踩着 JavaMail 的肩膀,封装得挺到位,基本常用的场景都能搞定,像发纯文本、加附件、带模板内容这些,都有对应的方法,调用也不麻烦。
JavaMail 是什么?简单说,就是 Java 里收发邮件用的主流库,支持 SMTP、POP3、IMAP,还能加密、加附件。平时手写挺烦的,用 EmailUtils
封装一下,省心不少。
常见的 EmailUtils
方法像 sendEmail(String to, String subject, String body, Properties config)
,参数直白明了。config 一般包括 SMTP 服务地址(比如 smtp.qq.com
)、端口(587
或 465
)、加密方式(SSL/TLS
)、账号密码这些。
要是你有批量发邮件的需求,比如注册通知、密码找回啥的,建议用模板引擎,比如 FreeMarker 或 Velocity,可以让内容动态生成。配置好模板路径,往模板里塞参数就行了。
发送带附件的邮件也挺,EmailUtils
用到 MimeBodyPart 和 MimeMultipart,只要传文件路径或者输入流,附上去就搞定。
邮件发送一般都得认证吧,EmailUtils
支持开启 SSL 或 STARTTLS,还能开调试日志,看看邮件到底有没有发出去,方便排查。
发送多了还怕慢?可以整合下多线程或者异步方案。你要是给用户发批量提醒邮件,配合线程池效果还不错。
如果你想深入看看 SMTP 示例或者 JavaMail 的基础,可以看看这些文章: JavaMail 邮件发送实现、 javaMail 发邮件。
嗯,,如果你还在手写 JavaMail 发送逻辑,不妨抽空整一个 EmailUtils
工具类出来,开发效率能提不少,代码也清爽。
评论区