首页 > 编程语言 >使用JavaMail API发送邮件

使用JavaMail API发送邮件

时间:2024-08-07 16:50:20浏览次数:15  
标签:String InternetAddress CollUtil 发送 API JavaMail message 邮件

发送邮件
以下是使用JavaMail API发送邮件的示例代码,包括密送自己的实现:

java
public static void transportSend(Set toSet, Set ccSet, Set bccSet,
String subject, String content, String mailType,
String personal, Boolean enabledMail) {
try {
if (!enabledMail) {
log.info("没有开启邮件");
return;
}
// 创建邮件会话
Session session = createSession(mailType);
// 创建邮件消息
Message message = new MimeMessage(session);
// 设置发件人地址和名称
String from = (StrPool.NO.equals(mailType)) ? FROM2 : FROM;
message.setFrom(new InternetAddress(from, personal));
// 设置收件人、抄送人和密送人
if (CollUtil.isNotEmpty(toSet)) {
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(CollUtil.join(toSet, ",")));
}
if (CollUtil.isNotEmpty(ccSet)) {
message.setRecipients(Message.RecipientType.CC, InternetAddress.parse(CollUtil.join(ccSet, ",")));
}
// 密送自己发的邮件
bccSet.add(from);
if (CollUtil.isNotEmpty(bccSet)) {
message.setRecipients(Message.RecipientType.BCC, InternetAddress.parse(CollUtil.join(bccSet, ",")));
}
// 设置邮件标题和内容
message.setSubject(subject);
message.setContent(content, "text/html;charset=utf-8");
// 发送邮件
Transport.send(message);
log.info("
================邮件发送成功");
} catch (Exception mex) {
// 异常处理
exceptionSend(mailType, toSet, mex, subject);
}
}
注意事项
邮件会话配置:确保邮件会话createSession方法根据你的邮件服务器配置正确创建。
异常处理:捕获并处理可能发生的任何异常,确保程序的健壮性。
邮件内容:邮件内容应根据实际需要设置,支持HTML格式。
结论
通过JavaMail API,我们可以轻松地在Java应用程序中实现邮件发送功能,包括密送自己。本文提供的示例代码展示了如何设置邮件的各种属性并发送邮件。记得在实际应用中根据自己的需求调整代码。

标签:String,InternetAddress,CollUtil,发送,API,JavaMail,message,邮件
From: https://www.cnblogs.com/dj699/p/18347388

相关文章

  • 使用EWS API发送并撤回邮件
    我们需要发送邮件后还能对其进行撤回操作。本文将介绍如何使用MicrosoftExchangeWebServices(EWS)API实现邮件的发送和撤回功能。EWSAPI简介EWSAPI是MicrosoftExchangeServer提供的一个Web服务接口,允许开发者通过编程方式发送、接收、搜索和管理电子邮件。EWSAPI提供......
  • yapi 部署k8s
    apiVersion:v1kind:Namespacemetadata:name:yapi-ns---apiVersion:v1kind:Servicemetadata:name:mongonamespace:yapi-nslabels:app:mongospec:ports:-port:27017targetPort:27017name:mongoselector:app:......
  • HTMX 和 FastAPI 绝佳搭配
    FastAPI的优势FastAPI是一个现代、快速(高性能)的Web框架,用于基于标准Python类型提示使用Python3.7+构建API。以下是它的一些主要优点:性能:FastAPI基于Starlette和Pydantic构建,使其与NodeJS和Go一样快(感谢Starlette),并且是最快的Python框架之一。易于使用:它......
  • 您好,我有一个关于仅使用 python 3.10 发送电子邮件附件的问题
    我在发送包含附件的电子邮件时遇到问题。我的电子邮件的内容类型似乎设置不正确,这导致附件无法正确附加。这是我的电子邮件发送功能的片段:python复制代码self.send(subject=self.subject、recipients=self.recipients、html=""、text=""、attachments=self.attac......
  • 5-7折优惠电影票API接口,微客云提供电影票api
    正规对接途径和考虑因素API供应商:一些大型的在线票务平台:如猫眼、淘票票等,如果能与他们达成合作,可能获得稳定且正规的接口,但通常门槛较高(主要面向一些大型的、正规的、有一定规模和背景的商业伙伴,且有严格的审核流程和商务合作流程等)。影院院线自己:如果是直接和影院院线建......
  • 2024美团官方霸王餐API接口
    在数字化日益深入的今天,餐饮行业正经历着一场前所未有的变革。作为行业内的领军企业,美团不断推出创新服务以优化用户体验,提升商家运营效率。其中,2024年美团官方推出的霸王餐API接口便是这一趋势下的重要产物。本文将从接口的背景、功能、优势、应用场景以及未来展望等方面,深入剖析......
  • c# net6创建API项目 日志管理log4net的用法
    一、program.cs//配置log4netXmlConfigurator.Configure(newFileInfo("log4net.config"));二、公共类LogHelper.csnamespaceElecInvoice.Common{publicclassLogHelper{publicstaticreadonlylog4net.ILogloginfo=log4net.LogManage......
  • GRAPHRAG API调用
    安装先决条件确保已安装Python3.8+。通过pip安装使用pip安装GraphRag-API:pipinstallgraphrag_api从源码安装克隆源码库:gitclonehttps://github.com/nightzjp/graphrag_api进入项目目录并安装依赖:cdgraphrag_apipipinstall-rrequirements.txt使......
  • 4、Flink SQL 与 DataStream API 集成处理 Insert-Only 流详解
    处理Insert-Only流StreamTableEnvironment提供以下方法来从DataStream转换和转换到DataStream:fromDataStream(DataStream):将insert-only和任意类型的流转换为表,默认情况下不传播事件时间和水印。fromDataStream(DataStream,Schema):将insert-only和任意类型......
  • netcore webapi部署到docker容器,api调用后显示中文乱码
    vs2022webapi部署到docker容器,api调用后显示中文乱码。原因是:源代码文件不是utf-8编码(用vscode打开是乱码,在vscode修改后,再提交,正常)解决方法一:在中文环境下用过微软家Visualstudio的都知道,新建文件的保存编码都默认为当前系统语言,所以你的文件编码永远都是GB2312,非常令人......