您的位置:首页 > 编程语言 > Java开发

javamail发送邮件

2015-11-30 21:27 399 查看
通过javamai发送邮件,是很常见,也很容易完成的一个功能。在功能完成的基础上,本文主要是作为拓展,了解发送邮件更多相关的知识。例如:javamail.jar api了解、邮件发送失败的一些情况及返回值、邮件类型、附件的添加、传输协议等。实现完代码,多了解,多扩展总是好的。

一、了解集中协议

SMTP

POP

IMAP

MIME

二、activation.jar是个啥
需要引入activation.jar和mail.jar,为什么activation.jar?

使用JavaMail的时候需要Javabean Activation Framework的支持,因此你也需要下载JAF.activation.jar 文件就是JAF的框架jar包。

对于通过JAF封装的数据,应用程序通过JAF提供的接口可以完成如下功能:

1、访问数据源中的数据.

2、获知数据源的数据类型.

3、获知可对数据进行的各种操作.

4、用户对数据执行某种操作时,自动创建执行该操作的软件部件的实例对象.

javaMail API可以利用JAF从某种数据源中读取数据和获知数据的MIME类型,并用这些数据生成MIME消息中的消息体和消息类型。

三、发送邮件依靠哪些类完成

javaMail核心类:Session、Transport、Message、Authenticator、Address。

1. javax.mail.Session类:表示邮件会话,是JavaMail API的最高层入口类。就像Http会话那样,我们进行收发邮件的工作都是基于这个会话的。

2. javax.mail.Transport类:根据指定的邮件发送协议(通常是 SMTP),通过指定的邮件发送服务器来发送邮件。

3. javax.mail.Message类:代表电子邮件。Message是一个抽象类,大多数情况下,我们使用javax.mail.internet.MimeMessage这个子类

4.javax.mail.Store类:表示接收邮件服务器上的注册用户的存储空间,通过Store类的getFolder()方法,可以访问用户的特定邮件夹。

5. javax.mail.Folder类:代表邮件夹。

6. javax.mail.Address类:代表邮件地址。可以设置发件人、收件人、抄送人、密件抄送

7. Authenticator 以用户名、密码的方式访问那些受到保护的资源,在这里“资源”就是指邮件服务器

按功能又分为三大类:

1. 创建和解析邮件内容的Message,Message类是创建和解析邮件的核心API,它的实例对象代表一封电子邮件。

2. 发送邮件的Transpor;接收邮件的Store,Transport的实例对象代表实现了某个邮件发送协议的邮件发送对象,例如SMTP协议。Store的实例对象代表实现了某个邮件接收协议的邮件接收对象,例如POP3协议。

3. 定义整个应用程序所需环境的Session,收集客户端与邮件服务器建立网络连接的会话信息,如邮件服务器的主机名、端口号、采用的邮件发送和接收协议等。Session对象根据这些信息构建用于邮件收发的Transport和Store对象,以及为客户端创建Message对象时提供信息支持。

邮件组织结构相关的API

MimeMessage类表示整封邮件。

MimeBodyPart类表示邮件的一个MIME消息。

MimeMultipart类表示一个由多个MIME消息组合成的组合MIME消息

四、可操作邮件类型:

发送html邮件

发送纯文本邮件

发送带有附件的邮件

回复邮件

转发邮件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: