JSP发送电子邮件Email

要使用JSP发送邮件是很简单的,需要在您的机器上安装JavaMail API和Java激活框架(JAF)。

  • 您可以从Java标准网站上下载的JavaMail(版本1.2)的最新版本。

  • 您可以从Java的标准的网站下载JavaBeans激活框架JAF(版本1.0.2)的最新版本。

下载并解压缩这些文件,在新创建的顶层目录,你会发现一些jar文件同时为应用。你需要添加了mail.jar和activation.jar文件的文件在你的CLASSPATH中。

发送一个简单的电子邮件:

下面是一个例子,从你的机器发送一个简单的电子邮件。这里假设你的本地主机连接到互联网,并有足够的能力来发送电子邮件。同时要确保从Java电子邮件API包和CLASSPATH中可用JAF包ARA的所有jar文件。

<%@ page import="java.io.*,java.util.*,javax.mail.*"%><%@ page import="javax.mail.internet.*,javax.activation.*"%><%@ page import="javax.servlet.http.*,javax.servlet.*" %><% String result; // Recipient's email ID needs to be mentioned. String to = "abcd@gmail.com"; // Sender's email ID needs to be mentioned String from = "mcmohd@gmail.com"; // Assuming you are sending email from localhost String host = "localhost"; // Get system properties object Properties properties = System.getProperties(); // Setup mail server properties.setProperty("mail.smtp.host", host); // Get the default Session object. Session mailSession = Session.getDefaultInstance(properties); try{ // Create a default MimeMessage object. MimeMessage message = new MimeMessage(mailSession); // Set From: header field of the header. message.setFrom(new InternetAddress(from)); // Set To: header field of the header. message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); // Set Subject: header field message.setSubject("This is the Subject Line!"); // Now set the actual message message.setText("This is actual message"); // Send message Transport.send(message); result = "Sent message successfully...."; }catch (MessagingException mex) { mex.printStackTrace(); result = "Error: unable to send message...."; }%><html><head><title>Send Email using JSP</title></head><body><center><h1>Send Email using JSP</h1></center><p align="center"><% out.println("Result: " + result + "");%></p></body></html>

现在,让我们把上面的代码写到SendEmail.jsp文件,并使用URL http://localhost:8080/SendEmail.jsp调用这个JSP这将发送一封电子邮件到指定的电子邮件ID abcd@gmail.comand会显示以下回应:

Send Email using JSP

Result: Sent message successfully....

如果您想发送电子邮件给多个收件人,然后下面的方法将被用来指定多个电子邮件ID: