使用SmtpClient类发送简单的文本邮件,但不能发送包含附件的邮件,每次只能发送
给一个收信人,它是jdk自带的包,所以比较有通用性。
JavaMail包提供了很完善的功能,可以写出任何一个强大的邮件
系统。
源码。
<%--
功能:JSP例程,用JSP发电子邮件
%>
<%@page contentType="text/html;GBK"%>
<%@page import="sun.net.smtp.SmtpClient"%>
<html>
<head>
<title>
发送邮件
</title>
</head>
<body>
<form method="post" action="sendmail.jsp">
收信人地址:<input type="text" name="to">
发信人地址:<input type="text" name="from">
信件主题:<input type="text" name="server" value="smtp.163.com">
信件内容:<textarea name="content" cols="73" rows="5" ></textarea>
<input type="submit" value="发送">
</form>
请填写必要的选项
<br>
<%
//取得各种参数
String to=request.getParameter("to");
String from=request.getParameter("from");
String subject=request.getParameter("subject");
String server=request.getParameter("server");
String content=request.getParameter("content");
//如果参数取到,并满足条件,则进入发信程序段
if(!to.equals("")&&!from.equals("")&&!subject.equals("")&&!server.equals(""))
{
tyr{
SmtpClient mail=new SmtpClient(server);
mail.from(from);
mail.to(to);
java.io.PrintStream mailout=
mail.startMessage();
mailout.println("From:"+from);
mailout.println("To:"+to);
mailout.println("Subject:"+subject);
mailout.println(content);
mailout.print("/r/n");
mailout.flush();
mail.closeServer();
out.println("发送成功,可以发送下一封信");
}
catch(Exception e){
out.println("发生错误:"+e.toString());
}
}
%>
</body>
</html>