编程语言

img andymu077

JavaMail 电子邮件发送实例

发表于2008/9/28 11:28:00  499人阅读

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page import="java.util.*, javax.mail.*, javax.mail.internet.*,javax.activation.*;" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JavaMail 电子邮件发送系统</title>
</head>
<body>
<%
// 以下变量为用户根据自己的情况设置
String smtphost = "192.168.XXX.XXX"; // 发送邮件服务器
String user = "XXXXX"; // 邮件服务器登录用户名
String password = "XXXXXX"; // 邮件服务器登录密码
String from =" XXXX@163.com"; // 发送人邮件地址
String to = "XXXX@163.com;" // 接受人邮件地址
String subject = "Java Mail Subject!"; // 邮件标题
String body = "Java Mail Body!"; // 邮件内容
String filename = "C://Documents and Settings//Administrator//Desktop//aa.rar";

// 以下为发送程序,用户无需改动
try {
Properties props = new Properties();
props.put("mail.smtp.host", smtphost);
props.put("mail.smtp.auth","true");
Session ssn = Session.getInstance(props, null);

MimeMessage message = new MimeMessage(ssn);

InternetAddress fromAddress = new InternetAddress(from);
message.setFrom(fromAddress);
InternetAddress toAddress = new InternetAddress(to);
message.addRecipient(Message.RecipientType.TO, toAddress);

message.setSubject(subject);
message.setText(body);

// 用于保存发送附件的文件名的集合
Vector file = new Vector();
file.addElement(filename);
//后面的BodyPart将加入到此处创建的Multipart中
Multipart mp = new MimeMultipart();
// 利用枚举器方便的遍历集合
Enumeration efile = file.elements();
// 检查序列中是否还有更多的对象
while (efile.hasMoreElements()) {
 MimeBodyPart mbp = new MimeBodyPart();
 // 选择出每一个附件名
 filename = efile.nextElement().toString();
 // 得到数据源
 FileDataSource fds = new FileDataSource(filename);
 // 得到附件本身并至入BodyPart
 mbp.setDataHandler(new DataHandler(fds));
 // 得到文件名同样至入BodyPart
 mbp.setFileName(fds.getName());
 mp.addBodyPart(mbp);
}
// 移走集合中的所有元素
file.removeAllElements();
// Multipart加入到信件
message.setContent(mp);
// 设置信件头的发送日期
message.setSentDate(new Date());
Transport transport = ssn.getTransport("smtp");
transport.connect(smtphost, user, password);
transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
//transport.send(message);
transport.close();
%><p>你的邮件已发送,请返回。</p><%
} catch(Exception m) {
out.println(m.toString());
}%>
</body>
</html>

阅读全文
0 0

相关文章推荐

img
取 消
img