- 浏览: 1737229 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (337)
- javaScript校验 (11)
- java (31)
- java连接数据库 (1)
- js应用 (41)
- JQuery (15)
- linux操作命令 (12)
- loadrunner测试 (5)
- tomcat (18)
- 数据库 (12)
- eclipse (7)
- 触发器 (7)
- 表单 (3)
- ibatis (6)
- oracle (4)
- xml (1)
- Exception (6)
- spring (16)
- struts (4)
- struts 标签 (2)
- sql (8)
- sql server (6)
- 其它 (18)
- Apache (2)
- 电脑故障 (4)
- java 线程 (1)
- dwr (8)
- jackey (18)
- 总结 (34)
- gcc linux (2)
- extjs 学习 (5)
- 网站建设 (4)
- 健康 (2)
- 房地产知识 (1)
- hibernate (3)
- mysql (7)
- linux (13)
- svn (1)
最新评论
-
阳光泛滥的日子:
很好用谢谢
java.net.URISyntaxException的解决办法 -
linjianqing:
现在有更好的处理方式吗?我正也为这发愁
applet访问打印机出现的问题 -
ruyi574812039:
非常感谢您的总结!想问几个问题!假设三个项目分别以静态部署的三 ...
在Tomcat中部署Web程序的几种方式 -
yangguo:
太j8麻烦了
Spring3.1中使用缓存注解及Shiro的缓存联合 -
bellawang:
很好用谢谢
java.net.URISyntaxException的解决办法
JavaMail API的设计是,为收发信息提供与协议无关的访问。方式是把该API划分成两个部分:
· 该API的第一个部分是本课程的重点。基本上是如何发送和接收独立于提供程序/协议的消息。
· 第二个部分则使用特定的协议语言,如:SMTP、POP、IMAP和NNTP。如果要让JavaMail API与服务器通信,就需要为之提供协议。由于Sun公司对特定协议提供程序有充分的介绍,用户可以免费获取,所以本课程没有介绍创建特定协议提供程序的内容。
复习相关协议
在学习JavaMail API的深层知识之前,让我们回过头来看一看在该API中使用的协议,本质上有4种人们常用的协议:
· SMTP
· POP
· IMAP
· MIME
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
您 还需要了解NNTP及其他一些协议。理解这些协议的基本原理有助于您理解如何使用JavaMail API。而该API的设计要与协议无关,所以不能克服这些基础协议的限制。如果选用的协议不支持某种功能,那么JavaMail API也无法在其上添加这种功能。(正如您一会儿就会看到的,在操作POP协议时,常常会碰到这种问题)。
SMTP
简单邮件传输协议 (SMTP)是用于传送电子邮件的机制。在JavaMail API环境中,您的基于JavaMail的程序将与您公司或Internet服务提供商(ISP)的SMTP服务器通信。该SMTP服务器将会把消息转发给用作接收消息的SMTP服务器,最后用户可通过POP或IMAP协议获取该消息。由于支持身份验证,所以不需要SMTP服务器是一种开放的转发器,但需要确保SMTP服务器配置正确。JavaMail API中没有集成用于处理诸如配置服务器以转发消息或添加/删除电子邮件帐户这一类任务的功能。
POP
POP 的含义是邮局协议,当前的版本为3,也称作POP3,该协议是在RFC 1939中定义的。POP是Internet上的大多数人用来接收邮件的机制。它为每个用户的每个邮箱定义支持,这是它所做的全部工作,也是大多数问题的根源。在使用POP协议时,人们熟悉的很多功能,如查看收到了多少新邮件消息的功能,POP根本不支持。这些功能都内置到诸如Eudora或 Microsoft Outlook之类的邮件程序中,能为您记住接收的上一封邮件,以及计算有多少新邮件这类信息。因此,使用JavaMail API时,如果想获取这类信息,将需要由自己进行计算。
IMAP
IMAP是用于接收消息的更加高级的协议,它是在RFC 2060中定义的。IMAP的含义是“Internet消息访问协议”,当前版本是第4版,也称作IMAP4。使用IMAP时,您的邮件服务器必须支持该协议。您不能只是简单地把程序转变为支持IMAP,而不是支持POP,就指望能支持IMAP中的一切。假定您的邮件服务器支持IMAP,那么基于 JavaMail的程序就可利用在服务器上拥有多个文件夹的用户,并且这些文件夹可以被多个用户共享的功能。
由于IMAP协议具有更高级的功能, 您也许会想IMAP应该被每一个人使用,但事实不是这样。因为IMAP会加重邮件服务器的负荷,它需要服务器接收新消息,发送消息给请求的用户,并在多个文件夹中为每个用户维护这些消息。而这要集中备份,因而长期下去用户的文件夹会变得越来越大,当磁盘空间用光了时,每个人都会遭受损失。而使用POP协议时,已保存消息可以解除服务器的重负。
MIME
MIME的含义是“多用途的网际邮件扩充协议”。它不是一种邮件传输协议,相反,它定义传输的内容:消息的格式、附件等。许多文档都定义了MIME协议,包含:RFC 822、RFC 2045、RFC 2046和RFC 2047。作为JavaMail API的用户,一般不需要担心这些格式。但是,这些格式确实存在,并为您的程序所用。
NNP和其他协议
由 于JavaMail API分开了提供程序和其他部分,所以您可以轻松地为附加协议添加支持。Sun公司提供第3方提供程序清单,这些提供程序要利用 Sun公司不支持的少见的协议。在这份清单中,您将会看到对NNTP(网络新闻传输协议)[新闻组]、S/MIME(安全多用途的网际邮件扩充协议)及其他协议的提供支持的第3方提供程序。
安装
目前有两种版本的JavaMail API最常用:1.2和 1.1.3。本课程中的所有例子都适用于这两种版本。其中JavaMail API 1.2是最新的,而JavaMail API 1.1.3中包含了Java 2企业版(J2EE)平台1.2.1版,所以它仍然很常用。使用JavaMail API的版本会对您的下载和安装产生一些影响。这两种版本的JavaMail API都能与JDK 1.1.6、Java 2标准版(J2SE)平台1.2.x和1.3.x协同工作。
注意:在安装了Sun公司的JavaMail工具后,会在演示目录下看到许多示例程序。
安装JavaMail 1.2
要使用JavaMail 1.2 API,可以下载JavaMail 1.2工具,然后解压缩javamail-1_2.zip文件,并把mail.jar文件添加到典型安装路径下。JavaMail 1.2工具带有SMTP、IMAP4和POP3提供程序以及核心类。
安装完JavaMail 1.2后,再安装JavaBeans Activation Framework。
安装JavaMail 1.1.3
要 使用JavaMail 1.1.3 API,可以下载JavaMail 1.1.3工具,然后解压缩javamail1_1_3.zip文件,并把mail.jar文件添加到典型安装路径下。JavaMail 1.1.3工具带有SMTP和IMAP4提供程序以及核心类。
如果您想用JavaMail 1.1.3访问POP服务器,需要下载并安装POP3提供程序。Sun公司拥有一个独立于 JavaMail 工具的提供程序。在下载并解压缩pop31_1_1.zip文件后,也还需要把pop3.jar添加到典型安装路径下。
安装完JavaMail 1.1.3后,再安装JavaBeans Activation Framework。
安装JavaBeans Activation Framework
JavaMail API的所有版本都需要JavaBeans Activation Framework(JavaBeans激活框架),这种框架提供了对输入任意数据块的支持,并能相应地对其进行处理。看上去效果好像不太好,但该框架是在当今的许多浏览器和邮件工具中可以找到的基本MIME类型支持。下载该框架后,解压缩jaf1_0_1.zip文件,并将activation.jar 文件添加到典型安装路径下。
对于JavaMail 1.2用户,现在应该把mail.jar和activation.jar文件添加到典型安装路径下。
对于JavaMail 1.1.3用户,现在应该把mail.jar、pop3.jar和activation.jar添加到典型安装路径下。如果您不打算使用POP3,就不需要把pop3.jar文件添加到典型安装路径下。
如果您不想更改安装路径环境变量,可以把JAR文件复制到Java运行时环境(JRE)目录下的lib/ext目录下。例如,对于J2SE 1.3版本,Windows平台上的默认目录应该是C:\jdk1.3\jre\lib\ext。
使用Java 2企业版
如果您使用的是J2EE,则在使用基本JavaMail API时,不需要做什么特殊的工作;JavaMail API带有J2EE类。只要确保j2ee.jar文件位于典型安装路径下,并完成了所有的设置工作。
对 于J2EE 1.2.1,POP3提供程序是单独提供的,因此需要下载该提供程序,并按安装JavaMail 1.1.3的步骤,在J2EE 1.2.1中包含POP3提供程序。J2EE 1.3的用户会获得J2EE和POP3提供程序,因而不需要对POP3提供程序执行独立安装。使用这两种版本的J2EE用户,都不需要安装 JavaBeans Activation Framework。
练习
设置您的 JavaMail 环境。
复习核心类
在 开始深入研究JavaMail类之前,首先让用户浏览一下构成API的核心类:会话、消息、地址、验证程序、传输,存储和文件夹。所有这些类都可以在 JavaMail API即javax.mail的顶层包中找到,尽管您将频繁地发现您自己使用的子类是在javax.mail.internet包中找到的。
Session类
Session类定义了一个基本的邮件会话。通过该会话可让别的工作顺利执行。Session对象利用java.util.Properties对象获取诸如邮件服务器、用户名、密码等信息,以及其他可在整个应用程序中共享的信息。
Session类的构造器是私有的。您可以获得一个可被getDefaultInstance()方法共享的单一的默认会话:
Properties props = new Properties();
// fill props with any information
Session session = Session.getDefaultInstance(props, null);
或者,您可以用getInstance()方法创建一个独特的会话:
Properties props = new Properties();
// fill props with any information
Session session = Session.getInstance(props, null);
这两种情形下的null参数都是一种Authenticator对象,它不是在此时使用的。详细信息请参阅其后的“Autherticator”一节。
在大多数情况下,使用共享会话就足够了,即使为多个用户邮箱处理邮件会话也是如此。您可以在通信过程的后面一步添加上用户名和密码的组合,并保持所有的一切是独立的。
Message类
一旦创建了自己的Session对象,就是该去创建要发送的消息的时候了。这时就要用到消息类型。作为一个抽象类,您必须操作一个子类,在大多数情况下,该子类是javax.mail.internet.MimeMessage。一个MimeMessage是一种理解MIME类型和报头(在不同的RFC文档中均有定义)的消息。消息的报头被严格限制成只能使用US-ASCII字符,尽管非ASCII字符可以被编码到某些报头字段中。
可以通过将Session对象传递给MimeMessage构造器的方法来创建消息:
MimeMessage message = new MimeMessage(session);
注意:还有其他的构造器,像用于创建消息的源于RFC822格式化的输入流的构造器。
一旦创建了消息,就可以设置其各个部分,如Message(消息)实现Part(部分)接口(以MimeMessage实现MimePart)。设置内容的基本机制是setContent()方法,它带有表示内容和MIME类型的参数:
message.setContent("Hello", "text/plain");
但是,如果正在使用 MimeMessage,并且您的消息是纯文本,那么您就可以使用setText()方法。该方法只需要一个表示实际内容的参数,默认的MIME类型为纯文本:
message.setText("Hello");
对于纯文本消息,setText()方法更常常被用来设置内容。要发送其他类型的消息,如HTML消息,就要使用setContent方法()。现在用的更多的是HTML消息。
要设置主题,可以使用setSubject()方法:
message.setSubject("First");
Address类
一旦创建了会话和消息,并为消息填充了内容,就需要用Address类为您的信件标上地址了。同Message类一样,Address类也是一种抽象类。您可以使用javax.mail.internet.InternetAddress类。
要创建只带有电子邮件地址的地址,可以把电子邮件地址传递给Address类的构造器:
Address address = new InternetAddress("president@whitehouse.gov");
如果想让一个名字出现在电子邮件地址后,也可以将其传递给构造器:
Address address = new InternetAddress("president@whitehouse.gov", "George Bush");
您要为消息的from(发送者)字段和to(接收者)字段创建地址对象。除非您的邮件服务器阻止这样做,否则要在发送的消息中注明该消息的发送者。
一旦创建好了地址,有两种方法可让您将地址与消息连接起来。为了鉴别发送者,您可以使用setFrom()和setReplyTo()方法。
message.setFrom(address)
如果您的消息需要显示多个地址来源,则可以使用addFrom()方法:
Address address[] = ...;
message.addFrom(address);
为了鉴别消息接收者,您可以使用addRecipient()方法。该方法除了需要一个地址参数外,还需要一个Message.RecipientType属性(消息的接收类型)。
message.addRecipient(type, address)
地址的3种预定义类型如下:
· Message.RecipientType.TO
· Message.RecipientType.CC
· Message.RecipientType.BCC
因此,如果一条消息将发送给副总统,同时还将发送该消息的副本给第一夫人,则采用下面的代码:
Address toAddress = new InternetAddress("vice.president@whitehouse.gov");
Address ccAddress = new InternetAddress("first.lady@whitehouse.gov");
message.addRecipient(Message.RecipientType.TO, toAddress);
message.addRecipient(Message.RecipientType.CC, ccAddress);
JavaMail API没有提供检查电子邮件地址有效性的机制。您可以自己编写支持扫描有效字符(在RFC 822文档中所定义的)的程序或检验MX(邮件交换)记录,这些都超越了JavaMail API的范围。
Authenticator类
与java.net 类一样,JavaMail API可以利用Authenticator(验证程序)类通过用户名和密码来访问受保护的资源。对于JavaMail API来说,这种受保护的资源是指邮件服务器。JavaMail的Authenticator类可以在javax.mail包中找到,并有别于同名的 java.net类。当JavaMail API在Java 1.1下工作时,JavaMail和java.net不会共享同一个Authenticator类名称,这是因为Java 1.1中不含有java.net。
要使用Authenticator类,您可以使用该抽象类的子类,并通过 getPasswordAuthentication()方法返回一个PasswordAuthentication实例。在创建时,您必须用会话记录 Authentication类。其后,当需要进行身份验证时,会通知您的Authenticator。会弹出一个窗口,或从一个配置文件(尽管不加密就不安全)中读取用户名和密码,并把它们作为一个PasswordAuthentication对象返回给调用程序。
Properties props = new Properties();
// fill props with any information
Authenticator auth = new MyAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
Transport类
发送消息的最后一步操作是使用Transport类。该类使用特定于协议(通常是SMTP)的语言来发送消息。它是一个抽象类,其操作与Session类有些相似。您可以通过只调用静态的send()方法来使用该类的默认版本:
Transport.send(message);
或者,您可以从用于您的协议的会话中获取一个特定的实例,然后传递用户名和密码(不必要时可以为空)并发送消息,最后关闭连接:
message.saveChanges(); // implicit with send()
Transport transport = session.getTransport("smtp");
transport.connect(host, username, password);
transport.sendMessage(message, message.getAllRecipients());
transport.close();
当您需要发送多个消息时,建议采用后一种方法,因为它将保持消息间活动服务器的连接。而基本的send()机制会为每一个方法调用都建立一条独立的连接。
注意:要查看经过邮件服务器邮件命令,可以用session.setDebug(true)方法设置调试标志。
Store和Folder类
使用Session类来获取消息,开始时与发送消息很相似。但是,在获取会话后,很有可能使用用户名和密码或Authenticator类来连接Store类。与Transport类一样,您要告诉Store类将使用什么协议:
// Store store = session.getStore("imap");
Store store = session.getStore("pop3");
store.connect(host, username, password);
在连接Store类后,就可以获取一个Folder类,在读取其中的消息前必须先打开该类。
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_ONLY);
Message message[] = folder.getMessages();
对于POP3协议,惟一可用的文件夹是INBOX。如果使用的是IMAP协议,则可以使用其他的文件夹。
注意:Sun公司的提供程序本来想提供方便。而Message message[]=folder.getMessages();这条语句却是一种从服务器逐条读取消息的缓慢操作,所以仅当您确实需要获取消息部分(该内容是所检索消息的内容)时可以使用这条语句。
一旦读取消息,就可以使用getContent()方法获取其内容,或使用writeTo()方法将其内容写到一个流中。getContent()方法只获取消息内容,而writeTo()方法则还会输出报头。
System.out.println(((MimeMessage)message).getContent());
一旦您阅读完邮件,就可以关闭对文件夹和存储的连接。
folder.close(aBoolean);
store.close();
传递给文件夹的close()方法的布尔变量指定了是否通过清除已删除的消息来更新文件夹。
继续前进
实 际上,理解使用这7个类的方式,是使用JavaMail API处理几乎所有事情所需要的全部内容。用这7个类以外的方式构建的JavaMail API,其大多数功能都是以几乎完全相同或特定的方式来执行任务的,就好像内容是附件。特定的任务,如:搜索、隔离等将在后面进行介绍。
使用JavaMail API
您已经看到了如何操作JavaMail API的核心部分。在下面几节中,您将学习如何连接几个部分以执行特定的任务。
发送消息
发送电子邮件消息涉及到获取会话、创建和填充消息并发送消息这些操作。您可以在获取Session时,通过为要传递的Properties对象设置mail.smtp.host属性来指定您的SMTP服务器。
String host = ...;
String from = ...;
String to = ...;
// Get system properties
Properties props = System.getProperties();
// Setup mail server
props.put("mail.smtp.host", host);
// Get session
Session session = Session.getDefaultInstance(props, null);
// Define message
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
message.setSubject("Hello JavaMail");
message.setText("Welcome to JavaMail");
// Send message
Transport.send(message);
您应该在try-catch块中编写代码,以在创建消息并发送它时可以抛出一个异常。
发表评论
-
JOptionPane类提示框的一些常用的方法
2015-01-09 21:35 2371做swing程序中遇到使用消息提示框的,JOptionPan ... -
java.net.URISyntaxException的解决办法
2013-08-16 19:33 41865java.net.URISyntaxExceptio ... -
applet访问打印机出现的问题
2011-08-30 15:10 3748最近在搞jasperReport对applet ... -
java.text.DecimalFormat()格式化输出数字
2011-07-26 13:19 2096有时我们需要控制输出 ... -
MyEclipse快捷键与插件大全
2010-05-26 09:35 1132Eclipse 快捷键(1) Ctrl+1 快 ... -
java处理日期格式大全Date format SimpleDateFormat
2010-02-25 15:14 82888Java中日期格式转换 /** * 字符串转换为 ... -
mysql中sql语句进行日期比较
2010-02-25 14:54 4680这里是一个使用日期函 ... -
DisplayTag是一个非常好用的表格显示标签
2009-09-15 22:10 1571DisplayTag是一个非常好用的表格显示标签,适合MVC模 ... -
Display Tag Lib是一个标签库,
2009-09-15 22:08 2703Display Tag Lib是一个标签库,用来处理jsp网页 ... -
用commons FileUpload实现文件上传
2009-09-14 23:02 2196import java.io.File; im ... -
用JavaDBF操作(读、写)DBF文件
2009-07-08 10:19 2354用JavaDBF操作(读、写)DBF文件<o:p> ... -
通用日期处理函数,日期处理大全
2009-01-06 15:30 1469package com.elink.util; /* * &l ... -
java处理日期函数汇总(经典收藏)
2009-01-06 15:27 1378public DateUti ... -
Java的日期时间函数
2009-01-06 15:24 1312import java.util.Calendar;impor ... -
关于java日期的函数
2009-01-06 15:23 1574public static SimpleDateFormat ... -
java时间日期函数
2009-01-06 14:44 10057一:字符串转换成时间及时间相减: 1:) SimpleDate ... -
FCKEditor使用说明
2008-11-17 10:25 11811. FCKeditor 介绍FCKeditor ... -
Mysql中如何实现Blob的存取?
2008-11-04 17:29 4696此实现为用java访问mysql的blob,对图片进行存取 / ... -
使用spring发送邮件例
2008-10-24 10:45 4144做了个spring发送纯文本文件以及发送带附件的邮件的例子,共 ... -
SMTP的基本命令及错误列表
2008-10-24 10:31 2660SMTP的基本命令及错误列 ...
相关推荐
JavaMail API 1.4.7 是一个广泛使用的开源库,专为Java开发者设计,用于处理电子邮件相关的任务。这个版本的API提供了丰富的功能,包括发送、接收邮件,管理邮箱,处理附件,以及支持多种邮件协议如SMTP(简单邮件...
JavaMail API是Java EE的一部分,但也可以在Java SE环境中使用。`javaMail.jar`是JavaMail API的实现库,包含了实现邮件协议(如SMTP、POP3、IMAP)的类和方法。 JavaMail API的核心概念包括以下几个部分: 1. **...
#### 一、JavaMail API 概述 JavaMail API 是一个可选的标准扩展,用于读取、编写和发送电子邮件。它允许开发者创建类似于 Eudora、Pine 或 Microsoft Outlook 的邮件用户代理 (Mail User Agent, MUA),而不是像 ...
在JavaMail API中,`mail.jar`是一个核心组件,包含了实现邮件功能所需的全部类和接口。在这个压缩包中,你可能会找到`mail.jar`以及其他相关文件,这些文件对于理解和使用JavaMail API至关重要。 `Message`类是...
`mail.jar` 文件包含了JavaMail API的主要实现,提供了一系列的类和接口,用于与邮件服务器进行通信。这些类包括`Session`(配置邮件会话)、`Message`(表示邮件对象)、`Store`(连接邮件存储)、`Folder`(操作...
以上只是一部分JavaMail API的关键概念和功能。通过阅读提供的英文帮助文档,开发者可以深入理解如何利用这些工具进行邮件处理,并且可以学习到如何处理认证、SSL/TLS加密、多部分消息、邮件过滤等高级特性。对于...
JavaMail API是Java平台上的一个强大工具,它为开发者提供了处理邮件系统交互的能力,包括发送、接收、管理邮件等。这篇博文将深入探讨JavaMail API的设计规范,帮助读者理解其核心概念和使用方法。 一、JavaMail ...
JavaMail API 简介 JavaMail API 是一个可以读取、撰写、发送电子邮件的可选包。它可以用来建立电子邮件客户端程序,例如Eudora、Foxmail、MS Outlook Express等。JavaMail API 不是一个邮件传输代理(Mail ...
JavaMail API是用于处理电子邮件的一组标准接口,它为开发人员提供了强大的邮件收发能力。JavaMail API不仅支持常见的邮件协议如SMTP(简单邮件传输协议)、POP3(邮局协议版本3)以及IMAP4(Internet消息访问协议...
书名:JavaMail API基础教程(电子书) 格式:HTML 作者:IBM 目录 1.教程提示 2.引入JavaMail API 3.对相关协议的回顾 4.安装JavaMail 5.对核心类的概览 6.JavaMail API的使用 7.用SearchTerm(搜索条件)搜索 8.练习...
JavaMail API是Java编程语言中用于处理邮件服务的一组接口和类,它是Java平台标准版(Java SE)和企业版(Java EE)的一部分。这个API允许开发者在Java应用程序中发送、接收、管理电子邮件,实现与各种邮件服务器的...
JavaMail API是Java平台上的一个标准接口,用于发送和接收电子邮件。它提供了丰富的类和接口,使得开发者可以方便地在应用程序中集成电子邮件功能。本文将深入探讨JavaMail API的核心类,帮助你理解如何利用这些类来...
JavaMail API 是Java编程语言中用于处理电子邮件的一个核心库,它允许开发者编写能够发送、接收和管理邮件的应用程序。这个API设计的目标是提供一种与邮件服务器通信的抽象层,使其独立于具体的邮件协议,如SMTP...
一、JavaMail API简介 JavaMail API是读取、撰写、发送电子信息的可选包。我们可用它来建立如Eudora、Foxmail、MS Outlook Express一般的邮件用户代理程序(Mail User Agent,简称MUA)。而不是像sendmail或者其它的...
JavaMail API是Java平台上的电子邮件解决方案,它提供了一组用于发送、接收、管理和处理电子邮件消息的API。JavaMail API主要包含以下几个核心概念:会话(Session)、消息(Message)、地址(Address)、验证程序...
JavaMail API是一种基于Java的可选扩展包,用于读取、编写和发送电子消息,主要用于创建类似于Eudora、Pine或Microsoft Outlook这样的邮件用户代理(MUA)程序。MUA是直接与用户交互的邮件客户端程序,而不同于邮件...
JavaMail API是读取、撰写、发送电子信息的可选包。我们可用它来建立如Eudora、Foxmail、MS Outlook Express一般的邮件用户代理程序(Mail User Agent,简称MUA)。而不是像sendmail或者其它的邮件传输代理(Mail ...
JavaMail API是JavaMail库的核心部分,它提供了一系列的接口和类,用于创建、发送、接收和管理电子邮件。 JavaMail API详解.chm文件可能是一个帮助文档,详细介绍了如何使用JavaMail API进行邮件操作。它可能涵盖了...
JavaMail API是一个强大的工具包,用于处理电子邮件操作,包括发送、接收、阅读和管理邮件。它为开发人员提供了一种简单而统一的方式,以实现邮件功能而无需关心底层协议的具体实现细节。 ##### 主要特点 - **协议...