【 tulaoshi.com - Java 】
                             
                            一:条件 必须下载sun公司的JavaMail API包,地址为:http://java.sun.com/products/javamail/
我这里用的是1.2版本,将相关包(jar文件)加到CLASSPATH中
二:该程序非常简单,不需要我们考虑很多地层的东西,因为API都帮我们做好了这些事情,下面是一个简单的发邮件的Servlet:(对于熟悉的人来说,恐怕是再简单不过了的一个servlet)
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*; 
import sun.net.smtp.*; 
public class SendMailServlet extends HttpServlet { 
public static String MAIL_FROM = "from"; 
public static String MAIL_TO = "to"; 
public static String MAIL_SUBJECT = "subject"; 
public static String MAIL_BODY = "body"; 
public static String MAIL_HOST = "mailhost"; 
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException 
{
resp.setContentType("text/html; charset=gb2312"); 
PrintWriter out = resp.getWriter(); 
out.println("<form method=POST action="" + req.getRequestURI() + """); 
out.println("<table");
out.println("<tr<tdsend mail server:</td"); 
out.println("<td<input type=text name=" + MAIL_HOST + " size=30</td</tr"); 
out.println("<tr<tdfrom:</td"); 
out.println("<td<input type=text name=" + MAIL_FROM + " size=30</td</tr"); 
out.println("<tr<tdto:</td"); 
out.println("<td<input type=text name=" + MAIL_TO + " size=30</td</tr");
out.println("<tr<tdsubject:</td"); 
out.println("<td<input type=text name=" + MAIL_SUBJECT + " size=30</td</tr"); 
out.println("<tr<tdtext:</td"); 
out.println("<td<textarea name=" + MAIL_BODY + " cols=40 rows=10</textarea</td</tr"); 
out.println("</table<br"); 
out.println("<input type=submit value="Send""); 
out.println("<input type=reset value="Reset""); 
out.println("</form");
out.flush();
} 
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException 
{ 
resp.setContentType("text/html; charset=gb2312"); 
PrintWriter out = new PrintWriter(resp.getOutputStream()); 
String from = req.getParameter(MAIL_FROM); 
String to = req.getParameter(MAIL_TO); 
String subject = req.getParameter(MAIL_SUBJECT); 
String body = req.getParameter(MAIL_BODY); 
String mailhost = req.getParameter(MAIL_HOST); 
try 
{ 
SmtpClient mailer = new SmtpClient(mailhost); 
mailer.from(from);
mailer.to(to);
PrintStream ps = mailer.startMessage();
ps.println("From: " + from);
ps.println("To: " + to); 
ps.println("Subject: " + subject); 
ps.println(body); 
mailer.closeServer(); 
out.println("Success!"); 
} 
catch (Exception ex) 
{ 
out.println("An error about:" + ex.getMessage()); 
}
out.flush();
}
public void init(ServletConfig cfg) throws ServletException 
{
super.init(cfg);
}
public void destroy() 
{
super.destroy(); 
}
}