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

原创 2001年05月15日 16:43:00
 
飞华统计专家

form.htm
========
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>邮件例程 - JavaMail - 发送HTML邮件</title>
</head>

<body>

<table border="0" cellspacing="0" cellpadding="0">
<form method="post" action="send.jsp">
<tr>
  <td>SMTP主机:</td>
  <td><input type="text" name="smtp" size="80"></td>
</tr>
<tr>
  <td>发信人:</td>
  <td><input type="text" name="from" size="80"></td>
</tr>
<tr>
  <td>收信人:</td>
  <td><input type="text" name="to" size="80"></td>
</tr>
<tr>
  <td>抄送人:</td>
  <td><input type="text" name="cc" size="80"></td>
</tr>
<tr>
  <td>暗送人:</td>
  <td><input type="text" name="bcc" size="80"></td>
</tr>
<tr>
  <td>主题:</td>
  <td><input type="text" name="subject" size="80"></td>
</tr>
<tr>
  <td valign="top">内容:</td>
  <td><textarea name="body" rows="5" cols="80"></textarea></td>
</tr>
<tr>
  <td colspan="2" align="center"><input type="submit" value="发送"></td>
</tr>
</form>
</table>

</body>
</html>

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

 

JavaMail发送HTML邮件

目的在一些客户响应系统中,面对客户的需求,我们有可能需要通过邮件对客户进行通知或者向客户反馈查询信息。比如:银行的账单系统,需要对客户的查账请求进行处理,发送账单邮件,此时就能将账单数据写入到HTML...
  • qq_24448899
  • qq_24448899
  • 2017年08月09日 08:55
  • 1084

【javaMail】【2.发HTML邮件】java mail 发送HTML邮件

java mail 包最简单的发送邮件入门例子。 发送内嵌html的邮件
  • ku360517703
  • ku360517703
  • 2016年01月08日 23:45
  • 2077

JavaMail发送邮件(普通邮件,html邮件以及附件邮件)

实现普通邮件,html邮件以及附件邮件的发送;此例子使用的是163邮箱 邮箱的服务地址,邮件用户名密码在配置文件中读取;...
  • shfei10100
  • shfei10100
  • 2013年12月25日 16:08
  • 7824

javamail发送文本邮件、HTML邮件及带附件邮件

MailInfo.javaimport java.util.Properties; public class MailInfo { private String mailServerHost;//...
  • oyzl68
  • oyzl68
  • 2012年11月30日 21:52
  • 16862

spring简单邮件发送(文本/html/图片/附件)

Spring邮件抽象层的主要包为org.springframework.mail。它包括了发送电子邮件的主要接口MailSender,和值对象SimpleMailMessage,它封装了简单邮件的属性...
  • johnjobs
  • johnjobs
  • 2014年12月26日 10:31
  • 2336

javamail 发送邮件,发复杂html,包括附件,以及内嵌图片的邮件

当前版本:javamail1_4_4.zip      可以去oracle去下载最新的版本 发复杂的邮件,html内容,包括带附件的,邮件内容嵌入图片的邮件 首先,要导入的包有: dsn.jar...
  • javalzbin
  • javalzbin
  • 2011年12月06日 11:45
  • 7689

JavaMail实现邮件发送的简单封装(包括文本、图片、html、附件)

最近学习了一下java mail 的使用 网上有很多资料,比较容易理解,也有一些简单的例子,但是封装的都不太理想,于是自己写了一个JavaMail的简单封装,一共两个类,可以实现自由的添加邮件标题、接...
  • lyisray
  • lyisray
  • 2014年12月18日 10:55
  • 3140

JavaMail发送带附件的电子邮件示例

/** * CrazyItTest * 使用JavaMail发送带附件的电子邮件示例 */ package com.labci.javamail.test; import java.i...
  • tujiyue
  • tujiyue
  • 2011年05月26日 21:52
  • 4177

java发送邮件带url、html

java发送邮件,内容包含URL、HTML,并且对URL中文编码,URL的有效性校验。
  • u010725245
  • u010725245
  • 2016年04月26日 23:43
  • 3032

javamail邮件发送,带附件发送

package com.frame.util; import java.util.Date; import java.util.Enumeration; import java.util.Prope...
  • xunwei0303
  • xunwei0303
  • 2017年04月05日 20:44
  • 615
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:邮件例程 - JavaMail - 发送HTML邮件
举报原因:
原因补充:

(最多只允许输入30个字)