JavaMail 教程 2025年3月17日 | 阅读 3 分钟
JavaMail 是一个 API,用于编写、撰写和读取电子消息(电子邮件)。
JavaMail API 提供了一个协议无关和平台无关的框架,用于发送和接收邮件。
javax.mail 和 javax.mail.activation 包包含 JavaMail API 的核心类。
JavaMail 功能可以应用于许多事件。它可以用于注册用户时(发送通知,例如感谢您对我的网站的兴趣)、忘记密码时(将密码发送到用户的电子邮件 ID)、发送重要更新的通知等。因此,java mail api 有多种用途。
你知道吗? 如何使用 JavaMail API 发送和接收电子邮件? 如何通过 gmail 服务器发送电子邮件? 如何发送和接收带附件的电子邮件? 如何发送包含图像的 HTML 内容的电子邮件? 如何转发和删除电子邮件?
JavaMail API 中使用的协议 SMTP SMTP 是简单邮件传输协议的缩写。它提供了一种传递电子邮件的机制。我们可以使用 Apache James 服务器、Postcast 服务器、cmail 服务器等作为 SMTP 服务器。但是,如果我们购买主机空间,主机提供商会默认提供 SMTP 服务器。例如,我的 smtp 服务器是 mail.javatpoint.com。如果我们使用主机提供商提供的 SMTP 服务器,则需要进行身份验证才能发送和接收电子邮件。
POP POP 是邮局协议的缩写,也称为 POP3。它提供了一种接收电子邮件的机制。它为每个用户提供对单个邮箱的支持。我们可以使用 Apache James 服务器、cmail 服务器等作为 POP 服务器。但是,如果我们购买主机空间,主机提供商会默认提供 POP 服务器。例如,主机提供商为我的站点提供的 pop 服务器是 mail.javatpoint.com。此协议在 RFC 1939 中定义。
IMAP IMAP 是互联网消息访问协议的缩写。IMAP 是一种用于接收消息的先进协议。除了可以由多个用户共享邮箱外,它还为每个用户提供对多个邮箱的支持。它在 RFC 2060 中定义。
MIME 多用途互联网邮件扩展 (MIME) 告诉浏览器正在发送的内容,例如附件、消息格式等。它不被称为邮件传输协议,但它被您的邮件程序使用。
NNTP 和其他 第三方提供商提供了许多协议。其中一些是网络新闻传输协议 (NNTP)、安全多用途互联网邮件扩展 (S/MIME) 等。
JavaMail 架构 java 应用程序使用 JavaMail API 来编写、发送和接收电子邮件。 JavaMail API 使用 SPI(服务提供者接口),该接口为 java 应用程序提供中介服务,以处理不同的协议。让我们用下面的图来理解它
JavaMail API 核心类 Java Mail API 中使用了两个包:javax.mail 和 javax.mail.internet 包。这些包包含 Java Mail API 的许多类。 它们是
javax.mail.Session 类 javax.mail.Message 类 javax.mail.internet.MimeMessage 类 javax.mail.Address 类 javax.mail.internet.InternetAddress 类 javax.mail.Authenticator 类 javax.mail.PasswordAuthentication 类 javax.mail.Transport 类 javax.mail.Store 类 javax.mail.Folder 类等 我们将在使用时逐一了解这些类。