JavaMail学习四 JavaMailAPI

1.javaMail的体系及分类结构

JavaMail按功能通常可以分为如下三大类:

~~创建和解析邮件内容的API

~~发送邮件的API

~~接收邮件的API

虽然上述三种类型的API在JavaMail中都由多个API类组成,但每种类型所涉及的核心API类不多,其他类都是这些核心API类的辅助,笔者认为JavaMail的核心类为Message,Transport,Store,Session这4个类,学习和编写JavaMail程序是只要记住这些核心API,了解这些核心API类的作用,掌握他们之间的调用关系和工作流程,就很容易编写Java邮件处理程序,可以在编程中使用这4个核心类顺藤摸瓜,边查帮助文档了解这些辅助类的作用和用法。Message,Transport,Store,Session这4个类的关系

 

1.Messhe类:

javax.mail.Message类是创建和解析邮件的核心API,它的实例对象代表一封电子邮件。客户端程序发送邮件时,首先使用创建邮件的JavaMailAPI创建出封装了邮件数据的Message对象,然后把这个对象传递给邮件发送API发送。客户端程序接收邮件时,邮件接收API把接收到的邮件数据封装在Message类的实例对象中,客户端程序在使用邮件解析API从这个对象中解析出接收到的邮件数据。

2.Transport类:

javax.mail.Transport类是发送邮件的核心API类,它的实例对象代表实现了某个邮件发送协议的邮件发送对象,例如SMTP协议。客户端程序创建好Message对象后,只需要使用邮件发送API得到Transport对象,然后把Message对象传递给Transport对象,并调用它的发送方法,就可以把邮件发送给指定的SMTP服务器。

3.Store类:

javax.mail.Store类是接收邮件的核心API类,它的实例对象代表实现了某个邮件接收协议的邮件接收对象,例如pop3协议,客户端程序接收邮件时,只需要使用邮件接收API得到Store对象,然后调用Store类的接收方法,就可以从指定的POP3服务器获得邮件数据,并把这些数据封装到表示邮件的Message对象中。

4.Session类:

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

 

 

2.JAF简介:

(JavaBeans Actionvation Framework,JavaBeans激活框架)是一个专用的数据处理框架,它用于封装数据,并为应用程序提供访问和操作数据的接口。JavaMailAPI可以利用JAF从某种数据源中读取数据和获知数据的MIME类型,并用这些数据生成MIME消息中的消息体和消息类型。

JAF的主要作用在于让JAVA应用程序知道如何对一个数据源进行查看,编辑和打印操作等。大家知道MS word程序中可以打开一篇word文档中内嵌的Viso图片,JAF就是要让JAVA程序能够完成类型的技术应用,让应用程序知道数据源支持哪些操作,每个操作分别调用哪个处理模块,对于通过JAF封装的数据,应用程序通过使用JAF提供的接口可以完成如下的功能:

~~访问数据源中的数据

~~获知数据源的数据类型

~~获知可对数据进行的各种操作

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

例如使用JAF处理一个图片文件,那么应用程序通过JAF提供的接口就可以得到对图片文件进行操作的输入流输出流,图片文件MIME类型,JAF为图片文件提供的操作方法(如查看,编辑或打印图片等等),应用程序调用这些操作时,JAF就会调用相应的处理模块对数据进行处理。

JAF的API封装在一个叫activation.jar包中,activation.jar不是开发JavaMail应用程序所必须使用的jar包,但如果需要在应用程序中生成复杂的邮件内容或对邮件内容进行自动化处理,那么就需要使用activation.jar。

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值