繁体中文
设为首页
加入收藏
当前位置:JSP技术首页 >> 邮件相关 >> 邮件例程 - JavaMail - 发送HTML邮件

邮件例程 - JavaMail - 发送HTML邮件

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:63  文字大小:【】【】【
简介:form.htm ======== <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>邮件例程 - JavaMail - 发送HTML邮件</title...
关键字:邮件 JavaMail HTML

form.htm

========

邮件例程 - JavaMail - 发送HTML邮件

SMTP主机:
发信人:
收信人:
抄送人:
暗送人:
主题:
内容:

send.jsp

========

<%--

作者:何志强[hhzqq@21cn.com]

日期:2000-08-16

版本:1.0

功能:邮件例程 - JavaMail - 发送HTML邮件

--%>

<%

//变量声明

java.lang.String smtp,from,to,cc,bcc,subject,body;

//获得用户输入数据

smtp = request.getParameter("smtp");

from = request.getParameter("from");

to = request.getParameter("to");

cc = request.getParameter("cc");

bcc = request.getParameter("bcc");

subject = request.getParameter("subject");

if(subject!=null){

subject = new java.lang.String(subject.getBytes("iso-8859-1"));

}

body = request.getParameter("body");

//发送邮件

pipi.mail.HTML.send(smtp,from,to,cc,bcc,subject,body);

%>

pipi.jaf.StringDataSource.java

==============================

/*

作者:何志强[hhzqq@21cn.com]

日期:2000-08-16

功能:字符串型数据源

*/

package pipi.jaf;

public class StringDataSource implements javax.activation.DataSource{

private java.lang.String data;

private java.lang.String type;

public StringDataSource(java.lang.String data,java.lang.String type){

this.data = data;

this.type = type;

}

public java.io.InputStream getInputStream() throws java.io.IOException{

return new java.io.StringBufferInputStream(data);

}

public java.io.OutputStream getOutputStream() throws java.io.IOException{

throw new java.io.IOException("it does not support this method now!");

}

public java.lang.String getContentType(){

return type;

}

public java.lang.String getName(){

return "pipi";

}

}

pipi.mail.HTML.java

===================

/*

作者:何志强[hhzqq@21cn.com]

日期:2000-08-16

功能:发送HTML邮件

*/

package pipi.mail;

public final class HTML{

public static void send(

java.lang.String smtp, /*SMTP主机地址*/

java.lang.String from, /*发信人*/

java.lang.String to, /*收信人*/

java.lang.String cc, /*抄送人*/

java.lang.String bcc, /*暗送人*/

java.lang.String subject, /*主题*/

java.lang.String body /*内容*/

) throws java.lang.Exception{

//变量声明

java.util.Properties props; //系统属性

javax.mail.Session mailSession; //邮件会话对象

javax.mail.internet.MimeMessage mimeMsg; //MIME邮件对象

//设置系统属性

props = java.lang.System.getProperties(); //获得系统属性对象

props.put("mail.smtp.host",smtp); //设置SMTP主机

//获得邮件会话对象

mailSession = javax.mail.Session.getDefaultInstance(props,null);

//创建MIME邮件对象

mimeMsg = new javax.mail.internet.MimeMessage(mailSession);

//设置发信人

mimeMsg.setFrom(new javax.mail.internet.InternetAddress(from));

//设置收信人

if(to!=null){

mimeMsg.setRecipients(javax.mail.Message.RecipientType.TO,javax.mail.internet.InternetAddress.parse(to));

}

//设置抄送人

if(cc!=null){

mimeMsg.setRecipients(javax.mail.Message.RecipientType.CC,javax.mail.internet.InternetAddress.parse(cc));

}

//设置暗送人

if(bcc!=null){

mimeMsg.setRecipients(javax.mail.Message.RecipientType.BCC,javax.mail.internet.InternetAddress.parse(bcc));

}

//设置邮件主题

//mimeMsg.setSubject(subject);

mimeMsg.setSubject(subject,"gb2312");

//设置邮件内容

mimeMsg.setDataHandler(new javax.activation.DataHandler(new pipi.jaf.StringDataSource(body,"text/html")));

//发送邮件

javax.mail.Transport.send(mimeMsg);

}

}

本套程序使用到JavaMail和JAVABEANS(TM) ACTIVATION FRAMEWORK(JAF):

  JavaMail

    http://java.sun.com/products/javamail/

  JAVABEANS(TM) ACTIVATION FRAMEWORK(JAF)

    http://java.sun.com/products/javabeans/glasgow/jaf.html

责任编辑:admin
相关文章