📝 JavaMail API教程
19篇技术文档📅  最后修改于: 2020-11-14 07:19:45        🧑  作者: Mango
JavaMail API提供了独立于平台和协议的框架来构建邮件和消息传递应用程序。 JavaMail API提供了一组抽象类,这些抽象类定义了组成邮件系统的对象。它是用于阅读,编写和发送电子消息的可选程序包(标准扩展名)。本教程已为初学者准备,以帮助他们了解基本的JavaMail编程。完成本教程后,您将发现自己对JavaMail编程有中等水平的了解,从这里您可以进入更高的层次。先决条件JavaMa...
📅  最后修改于: 2020-11-14 07:20:12        🧑  作者: Mango
JavaMail API提供了独立于平台和协议的框架来构建邮件和消息传递应用程序。 JavaMail API提供了一组抽象类,这些抽象类定义了组成邮件系统的对象。它是用于阅读,编写和发送电子消息的可选程序包(标准扩展名)。JavaMail提供了用于构造到消息传递系统的接口的元素,包括系统组件和接口。尽管此规范未定义任何特定的实现,但JavaMail确实包含几个实现RFC822和MIME Inter...
📅  最后修改于: 2020-11-14 07:20:31        🧑  作者: Mango
使用Java应用程序发送电子邮件非常简单,但是从一开始,您应该在计算机上安装JavaMail API和Java激活框架(JAF)。您将需要JavaBeans激活框架(JAF)扩展,该扩展仅在不使用Java SE 6或更高版本时才提供javax.activation包。您可以从Java的标准网站下载最新版本的JavaMail(版本1.5.0)。您可以从Java的标准网站下载最新版本的JAF(版本1....
📅  最后修改于: 2020-11-14 07:21:26        🧑  作者: Mango
JavaMail API包含一些用于发送,阅读和删除电子邮件的接口和类。尽管JavaMail API中有许多软件包,但它们将涵盖Java Mail API中经常使用的两个主要软件包:javax.mail和javax.mail.internet软件包。这些软件包包含所有JavaMail核心类。他们是:ClassDescriptionjavax.mail.SessionThe key class of...
📅  最后修改于: 2020-11-14 07:21:42        🧑  作者: Mango
现在,我们对JavaMail API及其核心类有了一个清晰的想法,让我们现在编写一个简单的程序,该程序将发送简单的电子邮件,带有附件的电子邮件,带有HTML内容的电子邮件以及带有内嵌图像的电子邮件。在上述所有情况下遵循的基本步骤如下:获取会话对象。撰写邮件。发送消息。在以下各节中,我们演示了以下简单示例:发送简单的电子邮件通过电子邮件发送附件通过电子邮件发送HTML内容通过电子邮件发送嵌入式图片...
📅  最后修改于: 2020-11-14 07:22:12        🧑  作者: Mango
在继续本章之前,需要了解两个方面。它们是CheckandFetch。在JavaMail中检查电子邮件是一个过程,我们打开邮箱中的相应文件夹并获取每条消息。在这里,我们仅检查每个消息的标题,即From,To,subject。内容未读。在JavaMail中提取电子邮件是一个过程,其中我们打开邮箱中的相应文件夹并获取每条消息。除了标题,我们还通过识别内容类型来读取内容。要使用JavaMail API检查...
📅  最后修改于: 2020-11-14 07:23:03        🧑  作者: Mango
在上一章中,我们学习了如何检查电子邮件。现在,让我们看看如何获取每封电子邮件并阅读其内容。让我们编写一个Java类FetchingEmail,它将读取以下类型的电子邮件:简单的电子邮件带有附件的电子邮件带有内嵌图片的电子邮件代码中遵循的基本步骤如下:获取会话对象。创建POP3存储对象并连接到该存储。创建文件夹对象,然后在您的邮箱中打开相应的文件夹。检索消息。关闭文件夹并分别存储对象。创建Java类...
📅  最后修改于: 2020-11-14 07:23:30        🧑  作者: Mango
在前面的“检查电子邮件”和“获取电子邮件”一章中,当连接到您的邮箱存储时,我们连同主机一起传递了授权凭证(用户广告密码)。相反,我们可以配置属性以拥有主机,并向Session告知您的自定义Authenticator实例。在下面的示例中显示:创建Java类我们将在“检查电子邮件”一章中修改CheckingMails.java。其内容如下:您可以通过取消注释emailSession.setDebug(...
📅  最后修改于: 2020-11-14 07:24:09        🧑  作者: Mango
在本章中,我们将看到如何使用JavaMail API回复电子邮件。以下程序中遵循的基本步骤是:在属性中获取带有POP和SMPT服务器详细信息的Session对象。我们将需要POP详细信息来检索消息,并需要SMPT详细信息来发送消息。创建POP3存储对象并连接到该存储。创建文件夹对象,然后在您的邮箱中打开相应的文件夹。检索消息。遍历消息,如果要回复,请键入“ Y”或“ y”。获取消息的所有信息(收件...
📅  最后修改于: 2020-11-14 07:24:48        🧑  作者: Mango
在本章中,我们将看到如何使用JavaMail API转发电子邮件。以下程序中遵循的基本步骤是:在属性中获取带有POP和SMPT服务器详细信息的Session对象。我们将需要POP详细信息来检索消息,并需要SMPT详细信息来发送消息。创建POP3存储对象并连接到该存储。创建文件夹对象,然后在您的邮箱中打开相应的文件夹。检索消息。遍历消息,如果要转发,则键入“ Y”或“ y”。获取消息的所有信息(收件...
📅  最后修改于: 2020-11-14 07:25:22        🧑  作者: Mango
在本章中,我们将看到如何使用JavaMail API删除电子邮件。删除消息涉及使用与消息关联的标志。对于不同的状态,有不同的标志,其中一些是系统定义的,某些是用户定义的。预定义标志在内部类Flags.Flag中定义,并在下面列出:Flags.Flag.ANSWERED标志标记已删除Flags.Flag.DRAFT标志,旗帜Flags.Flag.RECENTFlags.Flag.SEENFlags....
📅  最后修改于: 2020-11-14 10:04:43        🧑  作者: Mango
到目前为止,我们在前几章中主要使用INBOX文件夹。这是大多数邮件所在的默认文件夹。一些系统可能将其称为INBOX,而另一些系统可能将其称为其他名称。但是,您始终可以使用名称INBOX从JavaMail API访问它。JavaMail API将文件夹表示为抽象Folder类的实例:此类声明用于从服务器请求命名文件夹,从文件夹中删除消息,在文件夹中搜索特定消息,列出文件夹中的消息等的方法。开启资料夹...
📅  最后修改于: 2020-11-14 10:05:11        🧑  作者: Mango
JavaMail中的配额是电子邮件存储中的消息数量有限或固定。每个邮件服务请求都计入JavaMail API调用配额。电子邮件服务可以应用以下配额标准:包含附件的外发邮件的最大大小。包括附件在内的传入邮件的最大大小。管理员为收件人时邮件的最大大小对于配额管理,JavaMail具有以下类:ClassDescriptionpublic class QuotaThis class represents ...
📅  最后修改于: 2020-11-14 10:05:42        🧑  作者: Mango
邮件可能会被退回有多种原因。在rfc1211上将深入讨论此问题。只有服务器才能确定特定邮箱或用户名的存在。当服务器检测到错误时,它将向原始消息的发送者返回一条指示失败原因的消息。有许多Internet标准涉及传递状态通知,但是大量服务器不支持这些新标准,而是使用临时技术来返回此类失败消息。因此,将退回的邮件与导致问题的原始邮件相关联变得非常困难。JavaMail包括对传递状态通知的解析的支持。有许...
📅  最后修改于: 2020-11-14 10:06:40        🧑  作者: Mango
SMTP是“简单邮件传输协议”的缩写。它是用于跨Internet协议(IP)网络传输电子邮件(e-mail)的Internet标准。 SMTP使用TCP端口25。速记SMTPS知道由SSL保护的SMTP连接,尽管SMTPS本身并不是一种协议。JavaMail API具有com.sun.mail.smtp程序包,该程序包用作访问SMTP服务器的SMTP协议提供程序。下表列出了此软件包中包含的类:Cl...