java使用hutool工具包实现发送邮件功能

it2023-12-27  78

一、背景

检测项目运行状态,出现异常时,向项目负责人发送通知邮件。

二、采用技术

主要使用java的mail工具类和hutool工具包

三、具体实现

1、邮箱配置

小编这个采用的是QQ邮箱,以QQ邮箱为例,设置大同小异。

登录网页版的QQ邮箱后,点击设置

点击账户 

找到相应的服务并开启,开启后会有对应授权码,后面代码实现会使用到,两种的授权码任选一种即可。

获取对应服务信息,用于设置

对应服务信息

 

2、引入对应的jar

<!-- hutool工具包 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>4.3.2</version> </dependency> <!-- mail邮件工具 --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>

3、参数实体

@Data public class MailInfo { //接收邮箱集合 private List<String> mails; //标题 private String title; //内容 private String message; }

4、实现工具类

@Slf4j public static void sendMailToQQ(MailInfo mailInfo){ try { log.info("=======进入QQ邮件发送方法======="); MailAccount account = new MailAccount(); account.setHost("smtp.qq.com"); account.setPort(587); account.setAuth(true); account.setFrom("1332140120@qq.com"); account.setUser("1332140120@qq.com"); account.setPass("XXXXXXXXXXXX"); //邮箱设置获取到的授权码 MailUtil.send(account, CollUtil.newArrayList(mailInfo.getMails()), mailInfo.getTitle(), mailInfo.getMessage(), false); log.info("=======QQ邮件发送成功======="+JSONObject.toJSONString(mailInfo)); } catch (Exception e) { log.error("=======QQ邮件发送失败======="+e.getMessage(),e); } }

 

最新回复(0)