没有合适的资源?快使用搜索试试~ 我知道了~
超级实用的Javamail快速入门实用简易教程
资源详情
资源评论
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/8755141/bg1.jpg)
JavaMail 简易教程
Alex Zhu 2011.3 Version 0.1 Beta
JavaMail API 简介..............................................................................................................................3
了解相关协议.............................................................................................................................3
JavaMail 的安装.................................................................................................................................5
安装 JavaBeans Activation Framework......................................................................................5
使用 Java EE 企业版..................................................................................................................5
发送邮件的例子.................................................................................................................................6
JavaMail 核心类.................................................................................................................................8
java.util.Properties 类..................................................................................................................8
javax.mail.Session 类................................................................................................................10
javax.mail.Authenticator 类......................................................................................................11
javax.mail.Message 类..............................................................................................................13
javax.mail.Address 类...............................................................................................................16
javax.mail.Transport 类.............................................................................................................17
javax.mail.Store 和 javax.mail.Folder 类..................................................................................18
使用 JavaMail API............................................................................................................................20
发送消息...................................................................................................................................20
获取消息...................................................................................................................................22
删除消息和标志.......................................................................................................................24
自我验证...................................................................................................................................25
回复消息...................................................................................................................................26
转发消息...................................................................................................................................27
操作附件...................................................................................................................................28
发送附件...........................................................................................................................28
获取附件...........................................................................................................................29
处理 HTML 消息......................................................................................................................30
发送 HTML 消息..............................................................................................................30
在消息中包含图片...........................................................................................................30
用 SearchTerm 搜索..........................................................................................................................32
常见问答...........................................................................................................................................33
JavaMail 的常用类速查...................................................................................................................36
示例代码...........................................................................................................................................39
Gmail 收发信............................................................................................................................39
JavaMail 收取邮件属性配置(包括 Gmail、hotmail 等)...................................................42
JavaMail 收取邮件 IMAP........................................................................................................46
JavaMail 发送邮件 [代码] MailSender.java............................................................................56
JavaMail 收取邮件 POP3.........................................................................................................63
GmailFetch 收取 Gmail 邮件...................................................................................................69
Gmail Sender 发送 Gmail 邮件................................................................................................70
![](https://csdnimg.cn/release/download_crawler_static/8755141/bg2.jpg)
2
![](https://csdnimg.cn/release/download_crawler_static/8755141/bg3.jpg)
JavaMail API 简介
JavaMail API 是一种可选的、能用于读取、编写和发送电子消息的包(标准扩展),
可使用其创建邮件用户代理(Mail User Agent ,MUA) 类型的程序,类似于 Eudora、Pine
及 Microsoft Outlook 邮件程序。其主要目的不是像发送邮件或其他邮件传输代理(Mail
Transfer Agent,MTA)类型的程序那样用于传输、发送和转发消息。换句话说,用户可以
与 MUA 类型的程序交互,以阅读和撰写电子邮件。MUA
依靠
MTA
处理实际的发送任务
。
JavaMail API 的设计是,为收发信息提供与协议无关的访问。方式是把该 API 划分成
两个部分:
• 第一个部分 基本上是如何发送和接收独立于提供程序/协议的消息。
• 第二个部分 使用特定的协议语言,如:SMTP、POP、IMAP 和 NNTP。如果要让
JavaMail API 与服务器通信,就需要为之提供协议。Sun
公司对特定协议提供程序有充分的介绍,
用户可以免费获取。
了解相关协议
在学习 JavaMail API 的深层知识之前,让我们来看一看在该 API 中使用的协议,通常
有 4 种人们常用的协议:
• SMTP
• POP
• IMAP
• MIME
还需要了解 NNTP 及其他一些协议。理解这些协议的基本原理有助于理解如何使用
JavaMail API。而该 API 的设计要与协议无关,所以不能克服这些基础协议的限制。如果选
用的协议不支持某种功能,那么 JavaMail API 也无法在其上添加这种功能。(如在操作
POP 协议时,常常会碰到这种问题)
SMTP
简单邮件传输协议(Simple Mail Transfer Protocol)是用于传送电子邮件的机制。在
JavaMail API 环境中,基于 JavaMail 的程序将与公司或 Internet 服务提供商(ISP)的 SMTP
服务器通信。SMTP 服务器将会把消息转发给用作接收消息的 SMTP 服务器,最后用户可
通过 POP 或 IMAP 协议获取该消息。由于支持身份验证,不需要 SMTP 服务器是一种开放
的转发器,但需要确保 SMTP 服务器配置正确。JavaMail API 中没有集成用于处理诸如配
置服务器以转发消息或添加/删除电子邮件帐户这一类任务的功能。参阅 RFC 821。
POP
POP 的含义是邮局协议(Post Office Protocol),当前的版本为 3,也称作 POP3,该
协议是在 RFC 1939 中定义的。POP 是 Internet 上的经常用来接收邮件的机制。它为每个用
户的每个邮箱定义支持,这是它所做的全部工作,也是大多数问题的根源。在使用 POP 协
议时,人们熟悉的很多功能,如查看收到了多少新邮件消息的功能, POP 根本不支持。这
3
![](https://csdnimg.cn/release/download_crawler_static/8755141/bg4.jpg)
些功能都内置到诸如 Eudora 或 Microsoft Outlook 之类的邮件程序中,能记住接收的上一封
邮件,以及计算有多少新邮件这类信息。因此,使用 JavaMail API 时,想获取这类信息,
将需要由自己进行计算。
IMAP
IMAP 用于接收消息的更高级的协议,在 RFC 2060 中定义。IMAP 的含义是“Internet
Message Access Protocol”,当前版本是第 4 版,也称作 IMAP4。使用 IMAP 时,邮件服务
器必须支持该协议。不能简单地把支持 POP 的程序用于 IMAP 协议,就指望能支持 IMAP
中的一切。如果邮件服务器支持 IMAP,那么基于 JavaMail 的程序就可访问在服务器上拥
有的多个文件夹,并且这些文件夹可以被多个用户共享。
既然 IMAP 协议具有更高级的功能,那么 IMAP 应该被所有人使用?! 事实不是这样!
因为 IMAP 会加重邮件服务器的负荷,它需要服务器接收新消息,发送消息给请求的用户 ,
并在多个文件夹中为每个用户维护这些消息。而这要集中备份,因而长期下去用户的文件
夹会变得越来越大,当磁盘空间用光了时,每个人都会遭受损失。而使用 POP 协议时,已
保存消息可以解除服务器的重负。
MIME
MIME 的含义是 多用途的网际邮件扩充协议 (Multipurpose Internet Mail Extension)。它
不是一种邮件传输协议,相反,它定义传输的内容:
消息的格式、附件等
。许多文档都定
义了 MIME 协议,包含:RFC 822、RFC 2045、RFC 2046 和 RFC 2047。作为 JavaMail API
的用户,一般不需要担心这些格式。但是,这些格式确实存在,并为您的程序所用。
NNTP 和其他协议
由于 JavaMail API 分开了提供程序和其他部分,可以轻松地为附加协议添加支持。Sun
公司提供第 3 方提供程序清单,这些提供程序要利用 Sun 公司不支持的少见的协议。在这
份清单中,您将会看到对 NNTP(网络新闻传输协议)[新闻组]、S/MIME(安全多用途的
网际邮件扩充协议)及其他协议的提供支持的第 3 方提供程序。
4
![](https://csdnimg.cn/release/download_crawler_static/8755141/bg5.jpg)
JavaMail 的安装
目前 JavaMail API 最高版本 1.4.4,可以到 Oracle
网站 查看最新情况。
下载地址:http://java.sun.com/products/javamail/downloads/index.html
解压 JavaMail 安装包: javamail1_4_4.zip
把其中的 mail.jar 文件添加到 CLASSPATH 路径下,或直接拷贝到 Tomcat 的 lib 目录下。
在 JavaMail 安装包的解压文件夹下,有 demo 演示目录可以看到许多示例程序[
建议浏览
]。
安装 JavaBeans Activation Framework
JavaMail API 的所有版本都需要 JavaBeans Activation Framework(JavaBeans 激活框架),
这种框架提供了对输入任意数据块的支持,并能相应地对其进行处理。
Java SE 6 以上版本中已经包含了最新的 JAF,如果安装低版本的 Java SE 则需要单独下载
JAF
框架 。下载该框架后,解压缩 jaf-1_1_1.zip 文件,并将 activation.jar 文件添加到
典型安装路径下。
使用 Java EE 企业版
如果使用的是 Java EE,则在使用基本 JavaMail API 时,不需要做什么特殊的工作;Java
EE API 中包含有 JavaMail。只要确保 j2ee.jar 文件位于典型安装路径下,并完成了所有的设
置工作,也不需要安装 JavaBeans Activation Framework。[
推荐安装
GlassFish]
练习
设置 JavaMail 环境。
5
剩余63页未读,继续阅读
![text/html](https://img-home.csdnimg.cn/images/20210720083451.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
oO晨晨晨Oo
- 粉丝: 64
- 资源: 2
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- 基于Docker-compose的Elasticsearch集群每个节点均是独立docker-compose配置而成源码.zip
- 目标检测-零售食品LOGO检测数据集-40000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-30000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-20000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 目标检测-零售食品LOGO检测数据集-10000张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本
- 基于GUI+MYSQL+JAVA图书管理系统文档说明+源码(高分大作业项目).zip
- 基于Qt使用C++实现图书管理系统源码+数据库(95分以上).zip
- 基于GUI+MYSQL+JAVA票务管理系统文档介绍+源码+数据库(高分大作业).zip
- Java项目-购物网站系统(java+Servlet+JSP+Mysql)
- 基于MC1496应用电路Multisim仿真源文件,Multisim10以上版本可打开运行.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)
评论0