介绍和示例应用程序
Aspose.Email Mail 使用场景
本文提出了 Aspose.Email for Java 的多种可能用途,特别关注该组件的邮件编程特性。
简报软件
Aspose.Email Mail API 可用于创建强大的简报应用程序。借助 Aspose.Email 对嵌入对象(如图片、音频等)的支持,可以创建包含图像(及其他嵌入对象)的丰富 HTML 简报。利用 Aspose.Email Mail API 的批量邮件功能,还可以在有限时间内发送海量批量邮件。Aspose.Email Mail 还提供基于模板的邮件合并功能,可用于创建简报模板,并通过该模板进行批量简报的邮件合并发送。Aspose.Email Mail 在电子邮件营销应用中还能完成许多其他任务。
其他营销工具
类似于简报应用程序,许多其他类型的软件也可以使用 Aspose.Email Mail 构建。利用它构建电子邮件营销、群发邮件和电子活动批量邮件等。
业务应用
Aspose.Email Mail 可用于几乎所有类型的业务应用,以执行实用任务:
- 邮件提醒:发送邮件提醒以通知用户活动情况。
- 会议请求:使用 Aspose.Email Mail 的 iCalendar 支持发送商务会议请求。
- 邮件定时报告:报告是大多数业务应用的核心。许多业务报告会定期生成。使用 Aspose.Email Mail 通过邮件发送定时报告。
电子邮件客户端
Aspose.Email Mail 也可用于电子邮件客户端发送普通邮件。它支持附件、嵌入对象、iCalendar 事件、邮件合并、批量发送邮件等,因此 Aspose.Email Mail 是创建邮件客户端应用程序的最佳选择。
Aspose.Email Mail 示例应用程序
为了演示如何使用 Aspose.Email Mail,我们将创建一个示例应用程序,展示如何构建电子邮件消息。 MailMessage 类 然后使用 SmtpClient 类发送它。
Mail : 示例应用程序步骤
请按照以下步骤使用 Aspose.Email 创建应用程序。
- 设计您的应用程序:创建一个包含三个字段的界面:From、To 和 Message。
- 在设计视图中双击 Send 按钮,在编辑器中编写代码。
- 创建 MailMessage 类的实例,并使用其属性构建邮件消息。(MailMessage 类的实例用于构建邮件消息,这些消息通过 SmtpClient 类传输到 SMTP 服务器进行投递)。
- 创建 SmtpClient 类的实例,并使用其属性发送邮件。
- 测试您的应用程序。
- 在 From 和 To 字段中输入地址。
- 在 Message Body 字段中输入消息。
- 点击 Send。
上述步骤如下所述:在设计视图中双击 Send 按钮并添加以下代码:
// Declare message as MailMessage instance
MailMessage message = new MailMessage();
// Specify From, To, Subject and Body
message.setFrom(new MailAddress("#From"));
message.setTo(MailAddressCollection.to_MailAddressCollection("#To"));
message.setSubject("#Subject");
message.setBody("#Body");
// Send email using SmtpClient, Create an instance of the SmtpClient Class and Specify the mailing host server, Username, Password and Port
SmtpClient client = new SmtpClient();
// Specify the mailing host server, Username, Password and Port
client.setHost("mail.server.com");
client.setUsername("username");
client.setPassword("password");
client.setPort(25);
client.send(message);
// Notify the user that a message has been sent
System.out.println("Message Sent");
连接到启用 SSL 的服务器时,需要设置以下 SMTPClient 对象属性。
// Set the port to 587. This is the SSL port of Gmail SMTP server, set the security mode to explicit
client.setPort(587);
client.setSecurityOptions(SecurityOptions.SSLExplicit);
结论
Aspose.Email Mail 是一个功能强大的组件,开发者几乎可以完成所有邮件相关任务,例如发送多线程批量邮件、使用邮件合并、添加附件、在邮件中嵌入图片和音频、添加 iCalendar 事件、接收邮件等等。
Aspose.Email Pop3
Aspose.Email Pop3 在 Java 平台上实现邮局协议 v3(POP3)。它让 Java 开发者无需了解协议细节和邮件及网络编程的复杂性,就能在 Java 应用程序中添加邮件查询和接收功能。Aspose.Email Pop3 支持标准 POP3 协议中定义的所有命令,并提供易于使用的接口和紧凑直观的对象模型。它极大地降低了 Java 开发者的学习曲线。
Pop3 : 主要特性
作为 Aspose.Email 的一部分,Aspose.Email Pop3 专为 Java 设计,并以托管的 Java 代码编写。它让您能够:
- 连接并登录 POP3 服务器。
- 支持 APOP。
- 查询消息。
- 检索消息。
- 全面支持异步编程模式。
- 支持 SSL。
Aspose.Email Pop3 场景
开发者可以在许多不同场景中使用 Aspose.Email Pop3。这里分享几个示例。
企业邮件自动化
Aspose.Email Pop3 可用于查询邮箱收件箱并获取邮件。它与发送邮件组件 Aspose.Email Mail 配合流畅。Aspose.Email 完全支持邮件自动化。使用 Aspose.Email Mail 发送邮件,使用 Aspose.Email Pop3 获取邮件。下载的邮件随后可由 Aspose.Email Mime 进行解析。
电子邮件客户端
Aspose.Email Pop3 可用于电子邮件客户端应用程序来接收邮件。
Pop3 : 示例应用程序
这里,我们将演示如何使用 Aspose.Email Pop3。该类具有许多功能,但我们将重点关注如何连接到 POP3 服务器并检索消息。示例展示了如何创建应用程序以及使其运行的代码示例。请按照以下步骤使用 Aspose.Email Pop3 创建示例应用程序。
- 创建 Pop3Client 的实例。
- 在此实例中设置 POP3 主机名、登录名和密码。
- 创建一个 MailMessage 实例,并通过调用 fetchMessage() 函数将账户中的第一封邮件获取到该实例中。这会把邮箱中的第一条消息放入 MailMessage 实例。
- 使用 MailMessage 实例的 From、Subject 和 HtmlBody 属性来查看邮件的发送者、主题和正文。
上述步骤在下面的代码示例中演示。
// Create a POP3 client
Pop3Client client = new Pop3Client();
// Basic settings (required)
client.setHost("pop3.youdomain.com");
client.setUsername("username");
client.setPassword("psw");
try {
// Retrieve first message in MailMessage format directly
MailMessage msg;
msg = client.fetchMessage(1);
System.out.println(msg.getFrom().toString());
System.out.println(msg.getSubject());
System.out.println(msg.getHtmlBody());
} catch (Exception ex) {
System.err.println(ex);
}
对于启用 SSL 的服务器,需要修改 Pop3Client 对象的以下属性:
// Set implicit security mode
client.setSecurityOptions(SecurityOptions.SSLImplicit);
Aspose.Email Imap
Aspose.Email Imap 在 Java 上实现了互联网消息访问协议(IMAP)。Aspose.Email Imap 让 Java 开发者能够快速为其应用程序添加 IMAP 功能,而无需了解协议细节。该组件支持获取和上传邮件、检查邮件的新/已读/未读状态等。
Imap:主要特性
Aspose.Email Imap 允许您:
- 获取电子邮件内容。
- 上传邮件。
- 列出不同文件夹中的邮件。
- 检查邮件的状态。
- 使用 MailMessage。
- 使用 SSL 支持。
使用 Aspose.Email Imap
Aspose.Email Imap 在 Java 上实现了互联网消息访问协议(IMAP)。借助它,开发者可以轻松查询和管理 IMAP 服务器的邮件,并创建、删除或重命名邮件文件夹。使用 Aspose.Email Imap,开发者能够通过易用的 API 利用 IMAP 协议的优势。由于邮件保留在服务器上,开发者可以从任意电脑访问邮件。利用 Aspose.Email Imap,开发者可以创建 Web 或桌面应用程序,以接收和操作来自 IMAP 服务器的邮件。Aspose 按照互联网认证和 RFC 标准实现了 IMAP 协议。因此,Aspose.Email Imap 是一个安全、功能完整的 IMAP 实现,具备易于理解的对象模型和接口。
Imap:示例应用程序
本文解释了如何使用 Aspose.Email Imap我们创建一个小应用程序,获取您 IMAP 邮箱中的邮件数量。请按照以下步骤使用 Aspose.Email Imap 创建示例应用程序。
- 通过传入 IMAP 服务器名称、登录名和密码来创建 ImapClient 实例。
- 调用 ImapClient 实例的 selectFolder() 方法,选择您想统计邮件数量的文件夹。
- 现在调用 ImapClient 实例的 CurrentFolder.TotalMessageCount 属性以获取邮件数量。
Imap:代码示例
以下代码示例展示了如何使用 Aspose.Email 实现上述步骤。
// Creates an instance of the class ImapClient by specified the host, username and password
ImapClient client = new ImapClient("localhost", "username", "password");
try {
client.selectFolder(ImapFolderInfo.IN_BOX);
String strTemp;
strTemp = "You have " + client.getCurrentFolder().getTotalMessageCount() + " messages in your account.";
// Gets number of messages in the folder, Disconnects to imap server.
System.out.println(strTemp);
} catch (Exception ex) {
System.err.println(ex);
}
对于启用 SSL 的邮件服务器,请设置 ImapClient 对象的以下属性:
// Set security mode
client.setSecurityOptions(SecurityOptions.SSLImplicit);
Aspose.Email Exchange
Aspose.Email Exchange 帮助开发者在 Microsoft Exchange Server 上管理邮件。使用该组件,您可以连接、列出消息并从 Exchange Server 邮箱下载邮件,而无需了解底层协议细节。该组件支持列出消息、发送邮件、下载邮件以及保存为 eml 或 msg 格式到本地磁盘等功能。
Exchange:主要特性
Aspose.Email Exchange 让您能够:
- 连接到 Microsoft Exchange 服务器。
- 列出 Exchange 邮箱中的电子邮件。
- 列出来自不同文件夹的电子邮件,例如收件箱、已发送、已删除或草稿文件夹。
- 删除 Exchange Server 上任何文件夹中的邮件。
使用 Aspose.Email Exchange
使用 Aspose.Email Exchange,开发者可以在 Java 应用程序中访问 Exchange Server 邮箱。它提供了易于使用的 API 来管理 Exchange Server 上的电子邮件。开发者可以创建控制台、桌面或 Web 应用程序来管理 Exchange 邮箱中的邮件。
Aspose.Email Exchange 示例应用程序
本文演示了如何使用 Aspose.Email Exchange我们创建一个简单的桌面应用程序,连接到 Exchange Server 邮箱,获取收件箱文件夹中的邮件列表并在 Windows 窗体上显示它们。
Exchange:示例应用步骤
要成功运行该应用程序,您需要正确的凭据以访问 Exchange Server。这里,我们从 Windows 窗体获取凭据信息——Exchange Server URI、用户名、密码和域。这是一个非常基础的示例,邮件属性——主题、发件人和收件人——仅在列表框中显示。
Exchange:代码示例
将以下代码添加到 List Messages 按钮的点击事件处理程序中。
// Clear the items in the listbox
lstMessages.clear();
// Create instance of IEWSClient class by giving credentials and Call ListMessages method to list messages info from Inbox
IEWSClient client = EWSClient.getEWSClient("mailboxURI", "Username", "Password", "Domain");
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());
// Loop through the collection to display the basic information
for (ExchangeMessageInfo msgInfo : msgCollection) {
String strMsgInfo = "Subject: " + msgInfo.getSubject() + " == From: " + msgInfo.getFrom().toString() + " == To: " + msgInfo.getTo().toString();
lstMessages.add(strMsgInfo);
}
Exchange:输出
此截图显示了从 Exchange Server 获取的邮件。listMessages() 方法返回主题、发件人、收件人和消息 ID 等基本信息。要获取完整邮件,请调用 IEWSClient.fetchMessage() 方法。(使用 IEWSClient.fetchMessage() 的方法已在文章中描述) 使用 Exchange 邮箱和消息.)
Aspose.Email Mime
多用途互联网邮件扩展(MIME)是一项互联网标准,扩展了电子邮件格式,以支持除 US-ASCII 之外的字符集文本、非文本附件、多部分消息体以及非 ASCII 字符集的头信息。Aspose.Email Mime 在 Java 上实现了 MIME 协议。它充当翻译器,可以从文件(如 .eml 等)或内存(字符串)读取电子邮件,然后将其解析为有意义的部分。如果您希望在不涉及 MIME 协议细节的情况下处理电子邮件文件,例如从邮件中提取附件,可使用 Aspose.Email Mime。
主要特性
Aspose.Email Mime 可与 Aspose.Email Pop3 和 Aspose.Email Mail 完美配合。
- Aspose.Email Pop3 从指定邮箱检索电子邮件。
- Aspose.Email Mail 将电子邮件发送到指定的邮箱。
- Aspose.Email Mime 是上述两者的枢纽,负责解析电子邮件。