在jsp中发送email

原创 2000年09月02日 22:42:00
一、我们可以通过任何支持sun规范中的sun.net.smtp包的JSP引擎(如JSWDK)发送mail。
(警告:使用内置的internal Sun规范包,这将影响到你的jsp程序的可移植性。)

以下scriptlet利用SmtpClient类在jsp文件中发送email。

<%@ page import="sun.net.smtp.SmtpClient, java.io.*" %>
<%
String from="gseshadri@hotmail.com";
String to="govind@jguru.com, govi@bigfoot.com";
try{
SmtpClient client = new SmtpClient("mail.xxxxx.xxx");
client.from(from);
client.to(to);
PrintStream message = client.startMessage();
message.println("To: " + to);
message.println("Subject: Sending email from JSP!");
message.println("This was sent from a JSP page!");
message.println();
message.println("Cool beans! :-)");
message.println();
message.println("Govind Seshadri");
message.println("jGuru.com");
message.println();
client.closeServer();
}
catch (IOException e){
System.out.println("ERROR SENDING EMAIL:"+e);
}
%>


二、 JavaMail是官方的 Java mail API,可参考 http://java.sun.com/products/javamail/。虽然该API比 sun.net.smtp.SmtpClient更丰富或者说更复杂,但它是可移植的。这里重新创建了一个 MailSender类,它包含了 JavaMail API。如下所示:


// ms_ prefix is for MailSender class variables
// str prefix is for String
// astr prefix is for array of Strings
// strbuf prefix is for StringBuffers, etc.
public MailSender(
String strFrom, // sender
String[] astrTo, // recipient(s)
String[] astrBCC, // bcc recipient(s), optional
String strSubject, // subject
boolean debugging)
{
ms_strFrom = strFrom; // who the message is from
ms_astrTo = astrTo; // who (plural) the message is to
ms_debugging = debugging; // who (plural) the message is to

// set the host
Properties props = new Properties();
props.put("mail.smtp.host", ms_strSMTPHost);

// create some properties and get the default Session
Session session = Session.getDefaultInstance(props, null);
session.setDebug(ms_debugging);

try {
// create a message
ms_msg = new MimeMessage(session);

// set the from
InternetAddress from = new InternetAddress(strFrom);
ms_msg.setFrom(from);

// set the to
InternetAddress[] address = new InternetAddress[astrTo.length];
for (int i = 0; i astrTo.length; ++i)
{
address[i] = new InternetAddress(astrTo[i]);
}
ms_msg.setRecipients(Message.RecipientType.TO, address);

// set the bcc recipients
if (astrBCC != null)
{
address = new InternetAddress[astrBCC.length];
for (int i = 0; i astrBCC.length; ++i)
{
eh.dbg("astrBCC[" + i + "] is: '" + astrBCC[i] + "'");
address[i] = new InternetAddress(astrBCC[i]);
}
ms_msg.setRecipients(Message.RecipientType.BCC, address);
}

// set the subject
ms_msg.setSubject(strSubject);

// set up the string buffer which will hold the message
ms_strbufMsg = new StringBuffer();

} catch (MessagingException mex) {
mex.printStackTrace(System.err);
} catch (Exception ex) {
ex.printStackTrace(System.err);
}
}

public void ms_add(String strText)
{
ms_strbufMsg.append(strText);
}

public void ms_send()
{
try {
// set the content as plain text
ms_msg.setContent(new String(ms_strbufMsg), "text/plain");

// and away
Transport.send(ms_msg);
} catch (Exception ex) {
System.out.println("Caught exception in MailSender.ms_send: " + ex);
}
}

在jsp中发送email

在jsp中发送email一、我们可以通过任何支持sun规范中的sun.net.smtp包的JSP引擎(如JSWDK)发送mail。(警告:使用内置的internal Sun规范包,这将影响到你的jsp...
  • zaowei21
  • zaowei21
  • 2007年05月14日 02:30
  • 496

jsp中群发邮件群发邮件

jsp中群发邮件1、获取需要的jar文件,mail.jar(http://java.sun.com/products/javamail/)和activation.jar(http://java.sun...
  • lookthesea
  • lookthesea
  • 2007年05月20日 11:47
  • 2040

C#发送Email方法总结

通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送: 1.通过Localhost; 2.通过普通SMTP; 3....
  • begtostudy
  • begtostudy
  • 2010年09月02日 16:59
  • 3949

jsp发送email

package com.chinashare.util; import java.util.*; import javax.mail.*; import javax.mail.int...
  • superlele123
  • superlele123
  • 2013年05月06日 15:58
  • 1209

JSP发送EMAIL

JSP发送EMAILdocument.title="JSP发送EMAIL - "+document.title 使用JSP发送email学习笔记在这里可以下载JAVAMAIL包 http://java...
  • pq5326
  • pq5326
  • 2005年04月25日 17:32
  • 1027

java实现Email发送的例子

现在许多网站在进行注册的时候
  • b671900
  • b671900
  • 2014年09月25日 15:43
  • 1476

java发送email带附件完整的web工程

package javaemail.bean; /** * Created by Administrator on 2016/11/10. * 邮件信息数据 */ public class E...
  • likailonghaha
  • likailonghaha
  • 2016年11月14日 21:54
  • 1443

[Python] 发送email的几种方式

python发送email还是比较简单的,可以通过登录邮件服务来发送,linux下也可以使用调用sendmail命令来发送,还可以使用本地或者是远程的smtp服务来发送邮件,不管是单个,群发,还是抄送...
  • lzz957748332
  • lzz957748332
  • 2014年08月15日 22:03
  • 5305

在.NET2.0中发送Email

刚刚看到一篇关于在.NET 中发送Email的文章《从asp.NET页面发送电子邮件》看到使用的还是System.Web.Mail命名空间下的类。我们都知道,在.NET 1.1下大部分都是使用这个命名...
  • zgqtxwd
  • zgqtxwd
  • 2008年04月24日 04:10
  • 74

JSP 页面用正则表达式验证email格式

验证email的JavaScript函数: function validateemail() {          var accemail = document.getElementById(...
  • hudieyaofei
  • hudieyaofei
  • 2011年11月04日 17:09
  • 5884
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在jsp中发送email
举报原因:
原因补充:

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