📄 email2.java
字号:
package com.tapando.mail;
import java.util.Date;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
/**
* 带附件的 email 发送程序
*
* <p>
* Title:
* </p>
* <p>
* Description:
* </p>
* <p>
* Copyright: Copyright (c) 2001
* </p>
* <p>
* Company:
* </p>
*
* @author unascribed
* @version 1.0
*/
public class Email2 {
public static void main(String[] argv) {
new Email2(argv);
}
public Email2(String[] argv) {
// 收件人
String to = null;
// 发件人
String from = null;
// 主题
String subject = null;
// 抄送人
String cc = null;
// 暗抄送
String bcc = null;
// mail 主机
String mailhost = null;
// mail 内容
String content = null;
// MIME邮件对象
MimeMessage mimeMsg = null;
// 邮件会话对象
Session session = null;
// 附件的文件名
String fileAttachment = "C:\\WINNT\\Greenstone.bmp";
try {
mailhost = "wangshuai";
from = "from@wangshuai";
to = "to@wangshuai";
subject = "您好";
content = "带附件的";
Properties props = System.getProperties(); // 获得系统属性
props.put("mail.smtp.host", mailhost); // 设置SMTP主机
// 获得邮件会话对象
session = Session.getDefaultInstance(props, null);
// 创建MIME邮件对象
mimeMsg = new MimeMessage(session);
// 设置发信人
mimeMsg.setFrom(new InternetAddress(from));
// 设置收信人
if (to != null) {
mimeMsg.setRecipients(Message.RecipientType.TO, InternetAddress
.parse(to));
}
// 设置抄送人
if (cc != null) {
mimeMsg.setRecipients(Message.RecipientType.CC, InternetAddress
.parse(cc));
}
// 设置暗送人
if (bcc != null) {
mimeMsg.setRecipients(Message.RecipientType.BCC,
InternetAddress.parse(bcc));
}
// 设置邮件主题
mimeMsg.setSubject(subject, "GBK");
// 第一部分信息
MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setText(content, "GBK");
// 第二部分信息
MimeBodyPart mbp2 = new MimeBodyPart();
// 在第二部分信息中附加一个文件
FileDataSource fds = new FileDataSource(fileAttachment);
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(fds.getName());
// 创建 Multipart 并放入每个 MimeBodyPart
Multipart mp = new MimeMultipart();
mp.addBodyPart(mbp1);
mp.addBodyPart(mbp2);
// 增加 Multipart 到信息体
mimeMsg.setContent(mp);
// 发送日期
mimeMsg.setSentDate(new Date());
// 发送邮件
Transport.send(mimeMsg);
System.out.println("email send!");
} catch (MessagingException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -