Java使用钉钉定时发送邮件到企业邮箱

news/2025/3/1 5:20:57/

相关步骤

  • 配置发送邮件相关信息
 # 邮件服务配置mail:host: smtp.qiye.aliyun.comport: 465username: 发送者对应的邮箱账号password: 发送者对应的邮箱密码to: 目标邮箱账号,多个账号之间用英文逗号隔开;例如xxx@dd.com,www@dd.com
  • 编写邮箱发送服务
import com.oaker.common.utils.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import java.security.Security;
import java.util.Properties;
@Component
@EnableScheduling //开启定时服务
public class MailServiceImpl {private static final Logger logger = LoggerFactory.getLogger(MailServiceImpl.class);@Value("${spring.mail.host}")private String host;@Value("${spring.mail.port}")private String port;@Value("${spring.mail.username}")private String username;@Value("${spring.mail.password}")private String password;@Value("${spring.mail.to}")private String to;@Scheduled(cron = "0 0 9 * * ? ") //每天上午九点发送邮件cron表达式具体用法可参考:https://blog.csdn.net/study_665/article/details/123506946public void sendUseHourExcel() {//设置SSL连接、邮件环境try {Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";Properties props = System.getProperties();props.setProperty("mail.smtp.host", host);props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);props.setProperty("mail.smtp.socketFactory.fallback", "false");//设置端口props.setProperty("mail.smtp.port", port);//启用调试props.setProperty("mail.debug", "true");props.setProperty("mail.smtp.socketFactory.port", port);props.setProperty("mail.smtp.auth", "true");//建立邮件会话Session session = Session.getDefaultInstance(props, new Authenticator() {@Overrideprotected PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication(username, password);}});//建立邮件对象MimeMessage message = new MimeMessage(session);//设置邮件的发件人、收件人、主题//发件人账号message.setFrom(new InternetAddress(username));//收件人账号if (StringUtils.isEmpty(to)) {return;}String[] targets = to.split(",");Address[] addresses = new Address[targets.length];for (int i = 0; i < targets.length; i++) {addresses[i] = new InternetAddress(targets[i]);}message.setRecipients(Message.RecipientType.TO, addresses);//邮件标题message.setSubject("邮件标题");//内容Multipart multipart = new MimeMultipart();BodyPart contentPart = new MimeBodyPart();//邮件内容contentPart.setContent("您好,这是发送的邮件!", "text/html;charset=utf-8");multipart.addBodyPart(contentPart);message.setContent(multipart);Transport.send(message);} catch (Exception e) {e.printStackTrace();logger.info("发送邮箱失败:" + e.getMessage());}}
}

结语

如果以上文章对您有一点点帮助,希望您不要吝啬的点个赞加个关注,您每一次小小的举动都是我坚持写作的不懈动力!ღ( ´・ᴗ・` )


http://www.ppmy.cn/news/241853.html

相关文章

“AI Earth”人工智能创新挑战赛:助力精准气象和海洋预测Baseline[3]:TCNN+RNN模型、SA-ConvLSTM模型

【机器学习入门与实践】入门必看系列,含数据挖掘项目实战:模型融合、特征优化、特征降维、探索性分析等,实战带你掌握机器学习数据挖掘 专栏详细介绍:【机器学习入门与实践】合集入门必看系列,含数据挖掘项目实战:数据融合、特征优化、特征降维、探索性分析等,实战带你掌…

uniapp引入uView正确步骤及误区

1.导入uview组件库 2.导入成功后在main.js里引入 import uView from /uni_modules/uview-ui Vue.use(uView)3.在App.vue里引入样式文件 import "/uni_modules/uview-ui/index.scss";4.在pages.json里添加配置 "easycom": {"^u-(.*)": "/…

msvcp140.dll重新安装的三个解决方法,解决找不到msvcp140.dll问题

msvcp140.dll是Microsoft Visual C Redistributable for Visual Studio 2015的一个重要组件&#xff0c;它是一个动态链接库文件&#xff08;DLL&#xff09;&#xff0c;包含许多用于开发和执行C程序的函数。如果它不在您的计算机上或不正确&#xff0c;您将收到一个错误消息&…

Android RK3588-12 5G信号显示格数

增强5G信号显示格数 modified: frameworks/base/telephony/java/android/telephony/CarrierConfigManager.java diff --git a/frameworks/base/telephony/java/android/telephony/CarrierConfigManager.java b/frameworks/base/telephony/java/android/telephony/CarrierCon…

手机中的计算摄影:光学变焦

点击上方“3D视觉工坊”&#xff0c;选择“星标” 干货第一时间送达 本文转载自计算摄影学&#xff0c;作者HawkWang。文章仅用于学术分享。 很多人咨询我&#xff0c;手机上到底有哪些计算摄影的应用和技术。那么接下来就准备抽空写一系列文章做一下介绍。 今天这一篇我来谈谈…

镜头变倍和变焦

/********************************************************************* * Author : lile * Modified : 2019年12月28日星期六 10:16:13 * Email : roger0212163.com * HomePage : lile777.blog.csdn.net * CopyRight …

支持可变焦和自动变焦工业相机

介绍 这款工业相机支持软件控制镜头变焦&#xff0c;500万黑白/彩色 、带缓存、使用M12镜头&#xff0c;输入IO触发、输出IO等功能&#xff0c;使用USB2.0传输&#xff0c;最大帧率7.5FPS(500万像素&#xff09;&#xff0c;38x38单板设计&#xff0c;可扩展USB2.0接口板安装外…

MHD-HD20AY高清20倍变焦摄像头VGA接口

产品概述&#xff1a; 高清1080P 20倍视频会议摄像机MHD-HD20A 是我司主要针对视频会议行业专业研发的通讯型彩色一体化摄像机。采用SONY 1/2.8英寸 Progressive CMOS 350万&#xff0c;最高分辨率通达到1080p/60/50,20倍光学变焦镜头&#xff0c;同时内置了高速全方位云台…