JSP与JavaMail之2(常用类介绍)

js

3.JavaMail的常用类介绍 

事先说明: 

没用过JavaMail的人可能看不懂这些介绍,不过不要紧,后面的文章有具体的实例,到时也可倒回来查看这些类的用法. 

(1) javax.mail.Properties类 
  JavaMail需要Properties来创建一个session对象。它将寻找字符串"mail.smtp.host",属性值就是发送邮件的主机. 

用法: 
 Properties props = new Properties (); 
   props.put("mail.smtp.host", "smtp.163.com");//可以换上你的smtp主机名。 

(2) javax.mail.Session类 
  这个Session类代表JavaMail 中的一个邮件session. 每一个基于 JavaMail的应用程序至少有一个session但是可以有任意多的session。 在这个例子中, Session对象需要知道用来处理邮件的SMTP 服务器。 

用法: 
   Session sendMailSession; 
   sendMailSession = Session.getInstance(props, null); 

(3) javax.mail.Transport类 
  邮件是既可以被发送也可以被受到。JavaMail使用了两个不同的类来完成这两个功能:Transport 和Store. Transport 是用来发送信息的,而Store用来收信。对于这的教程我们只需要用到Transport对象。 

用法: 
Transport transport; 
  transport = sendMailSession.getTransport("smtp"); 

  用JavaMail Session对象的getTransport 方法来初始化Transport。传过去的字符串申明了对象所要使用的协议,如"smtp"。这将为我们省了很多时间。因为JavaMail以境内置了很多协议的实现方法。 

 注意: JavaMail并不是绝对支持每一个协议,目前支持IMAP、 SMTP和 POP3. 

(4) javax.mail.MimeMessage类 
  Message对象将存储我们实际发送的电子邮件信息,Message对象被作为一个MimeMessage对象来创建并且需要知道应当选择哪一个JavaMail session。 

  用法: 
Message newMessage = new MimeMessage(sendMailSession); 

(5) javax.mail.InternetAddress类 
一旦您创建了 Session 和 Message,并将内容填入消息后,就可以用Address确定信件地址了。和 Message 一样,Address 也是个抽象类。您用的是Javax.mail.internet.InternetAddress 类. 

用法: 
InternetAddress from=new InternetAddress("xxf@cafe.com"); 

(6) javax.mail.Store类 
Store类实现特定邮件协议上的读、写、监视、查找等操作。通过Javax.mail.Store类可以访问Javax.mail.Folder类。 

用法: 
Store store=s.getSorte("pop3");//s为一个邮件会话 
store.connect(popserver,username,password);//通过你提供的pop地址,用户名和密码登录你的邮箱 

(7) javax.mail.Folder类 
Folder类用于分级组织邮件,并提供照Javax.mail.Message格式访问email的能力。 

用法: 
Folder folder=store.getFolder("INBOX"); 
folder.open(Folder.READ_ONLY); 

(8) javax.mail.Internet.MimeMultpart 
一般保存电子邮件内容的容器是Multipart抽象类,它定义了增加和删除及获得电子邮件不同部分内容的方法.由于Multipart是抽象类,我们必须为它使用一个具体的子类,JavaMail API提供javax.mail.Internet.MimeMultpart类来使用MimeMessage对象. 

用法: 
MimeMultipart multipart=new MimeMultipart(); 

注:我们使用MimeMultipart对象的一个方法是addBodyPart(),它在我们的电子邮件内容里添加BodyPart(BodyPart类在下面紧接着要介绍)对象.消息可以有很多部分,一个BodyPart可以代表一个部分. 

(9) javax.mail.Internet.MimeBodyPart类 

MimeBodyPart是BodyPart具体用于mimeMessage的一个子类. 
MimeBodyPart对象代表一个MimeMessage对象内容的一部分.每个MimeBodyPart被认为有两部分: 
⊙一个MIME类型 
⊙匹配这个类型的内容 

用法: 
MimeBodyPart mdp=new MimeBodyPart(); 
String text="Hello JavaMail!"; 
mdp.setContent(text,"text/plain");//定义MIME类型为text/plain,并设置MimeBodyPart的内容. 

(10) javax.activation.DataHandler类(包含在JAF中) 
JavaMail API不限制信息只为文本,任何形式的信息都可能作茧自缚MimeMessage的一部分.除了文本信息,作为文件附件包含在电子邮件信息的一部分是很普遍的.JavaMail API通过使用DataHandler对象,提供一个允许我们包含非文本BodyPart对象的简便方法. 

用法: 
DataHandler dh=new DataHandler(text,type); 
mdp.setDatahandler(dh);//mdp是一个MimeBodyPart对象 

(11) javax.activation.FileDataSource类(包含在JAF中) 
一个FileDataSource对象可以表示本地文件和服务器可以直接访问的资源.一个本地文件可以通过创建一个新的MimeBodyPart对象附在一个mimeMessage对象上. 

用法: 
MimeMultipart mm=new MimeMultipart(); 
MimeBodyPart mdp=new MimeBodyPart(); 
FileDataSource fds=new FileDataSource("c:/exam.txt"); 
mdp.setDataHandler(new DataHandler(fds)); //设置数据源 
mm.addBodyPart(mdp); //为当前消息MimeMultipart对象增加MimeBodyPart 

(12) javax.activation.URLDataSource类(包含在JAF中) 
远程资源,URL不会指向它们,由一个URLDataSource对象表示.一个远程资源可以通过创建一个新mimeBodyPart对象附在一个mimeMessage对象上(同FileDataSource差不多). 

时间: 2024-11-08 17:40:58

JSP与JavaMail之2(常用类介绍)的相关文章

android 系统层 常用类介绍

类名 功能介绍 示意图 surfacemanager为应用程序显示2d和3d程序无缝结合 mediaFramework 基于packetvideocore 该库支持常见视频图片格式的回放和录放譬如mp3,jpg等等 sqlite 对任何程序功能强劲的关系型数据库 open el es 该库用于3d硬件加速或者高度优化的3d软加速(类似于windows上directx库) sgl 2d渲染引擎google以skia为核心的渲染引擎 freetype 位图 矢量图的显示 webkit z最新的web

android 框架层 常用类介绍

名称 功能描述 示意图   activitymanager 管理应用程序的周期并提供常用的回退功能 window manager 窗口管理者 content provider 用于访问另一个的数据,或者共享自己的数据 视图系统 可以构建app的控件类型,比如button,listview等等等, 通知管理器 应用程序能够显示自定义的提示的信息   包管理器 管理android安装的程序 资源管理器 提供资源的管理器 这就是android框架层的一些常用类

JSP与JavaMail (二)

js 3.JavaMail的常用类介绍 事先说明: 没用过JavaMail的人可能看不懂这些介绍,不过不要紧,后面的文章有具体的实例,到时也可倒回来查看这些类的用法. (1) javax.mail.Properties类 JavaMail需要Properties来创建一个session对象.它将寻找字符串"mail.smtp.host",属性值就是发送邮件的主机. 用法: Properties props = new Properties (); props.put("mai

MFC中常用类、宏、函数的简单介绍

闲来无事,整理了一下MFC中常用的类.宏.函数. 常用类 CRect:用来表示矩形的类,拥有四个成员变量:top left bottom right.分别表是左上角和右下角的坐标.可以通过以下的方法构造: CRect( int l, int t, int r, int b ); 指明四个坐标 CRect( const RECT& srcRect ); 由RECT结构构造 CRect( LPCRECT lpSrcRect ); 由RECT结构构造 CRect( POINT point, SIZE

PHP SPL标准库中的常用函数介绍

  这篇文章主要介绍了PHP SPL标准库中的常用函数介绍,本文着重讲解了spl_autoload_extensions().spl_autoload_register().spl_autoload()三个函数,需要的朋友可以参考下 PHP SPL标准库中提供了一些函数用来处理如自动加载.迭代器处理等. spl_autoload_extensions()添加spl_autoload()可加载的文件扩展名 spl_autoload_register()注册函数到SPL __autoload函数栈中

Docker生态系统系列之一:常用组件介绍

本文讲的是Docker生态系统系列之一:常用组件介绍,[编者的话]本篇文章是介绍Docker生态系统的第一篇,不仅从概念上介绍了容器化.服务发现和全局配置存储.网络工具.调度.集群管理和编排这几部分内容,而且配以清晰易懂的例子进行讲解说明,非常值得读者称赞.Docker是现在使用最多的容器化软件.与其它已经存在的容器化系统相比,Docker可以更加简单的创建和管理容器,并与其它开源软件集成. 简介 容器化是一个以可移植和可预测的方式来部署分布式应用的过程,它会将应用组件以及依赖打包为一个标准.独

在JSP中用bean封装数据库常用的功能

js|封装|数据|数据库 在JSP中用bean封装数据库常用的功能 1.建立一个Bean package guestbook;import java.sql.*; public class sql_data{    String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";    String sConnStr="jdbc:odbc:guestbook";    Connection conn=null;    ResultSe

使用.net framework中常用类在2.0版中的新功能

在上一篇<浏览.NET Framework 2.0 类型库中新增的常用功能>一文中我主要列了几个新增的常用主件,本文作为小结主要针对一些常用类的扩展来讲最近在使用C# 2.0 的时候发现的几个新特征,讲得不当之处请网友指正. 1.Exception异常基类在2.0下,Exception基类增加了Data属性,原型如下,public virtual IDictionary Data {get;}可见其实现了IDictionary接口,用来存储异常的自定义信息,由此想到在ExceptionMana

计算机硬盘常用术语介绍

  1.磁道.柱面和扇区 硬盘盘片组的结构如图1所示. 计算机硬盘常用术语介绍-计算机常用术语"> 磁道(Track)是硬盘屮的磁头在盘片表面读.写数据时所形成的若干个同心阏轨迹.硬盘的磁道从最外圈向内依次编为"0"道."1"道等.如果将硬盘屮的所有盘片每面的任一个相同磁道重合起来就形成一个空心柱体,这个空心柱体在磁盘技术屮就被称为柱面(Cylinder),即不同磁头的所有相同位置的磁道就构成了柱而.如果再将盘片上每条磁道平均分为若干段,则每一段就是