分类: Java
2008-07-13 10:36:13
Session对象管理用以与消息传送系统进行交互的配置选项和用户验证信息。可以在JavaMail会话中创建共享和非共享会话。创建非共享会话的语法为:
Session session = Session.getInstance(p,authenticator)
其中,getInstance(p,authenticator)方法接受属性对象和验证对象作为参数。
创建共享会话的语法为:
Session defaultSession = Session.getDefaultInstance(p,authenticator)
其中,etDefaultInstance()方法接受属性对象和验证对象作为参数。
在创建会话之前,设置系统属性和连接服务器的协议。设置系统属性和设置连接服务器的协议的语法为:
Properties p = new Properties();
p.put("mail.transport.protocol","smtp");
p.put("mail.smtp.host","yourmail.yourserver.com");
p.put("mail.smtp.port","25");
Session mailSession = Session.getInstance(p);
其中,p.put("mail.transport.protocol","smtp")设置连接邮件服务器的协议
构造消息:
创建会话和设置属性之后,使用Message类新建消息。Message类包含消息的标题和
内容,Message类具有包含消息的寻址信息的属性,如setFrom、setRecipients、
setSubject和setText。要新建消息和设置属性,创建消息之后,设置用于发送消
息的各种属性。通过如下步骤构造消息:
(1)导入包。
(2)获得系统属性并设置连接服务器的协议。
(3)使用getDefaultInstance()方法创建Session对象的实例。
(4)新建一个MimeMessage。
(5)设置发送人和收件人的电子邮件地址。
(6)设置消息的主题、日期和文本。
发送消息:
简单邮件传输协议(Simple Mail Transfer Protocol,SMTP)是用于发送邮件的协议。
创建会话和编写消息之后,获得Transport对象,然后使用这个类的send()方法发送消息。
使用Session类的getTransport()方法获得Transport的实例,有三种方法可获得Transport
对象。获得Transport的语法为:
Session getTransport();
Session getTransport(String protocol);
Session getTransport(Address address);
其中:
getTransport();获得实现选定Transport协议的Transport对象;
getTransport(String protocol);接受特定协议作为参数;
getTransport(Address address);获得可以将消息发送到特定地址类型的Transport对象。
发送消息的语法为:
Transport trans = session.getTransport("SMTP");
trans.send(messageobject);
其中:
getTransport("SMTP")返回实现了SMTP协议的传输对象;
trans.send(messageobject)发送消息对象。