导入两个JAR包:
activation.jar
mail.jar
package
cn.mail;
import
java.io.File;
import
java.util.Properties;
import
javax.mail.Authenticator;
import
javax.mail.Message.RecipientType;
import
javax.mail.PasswordAuthentication;
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;
import
javax.mail.internet.MimeUtility;
public
class
SendMail {
public
static
void
main(String[] args)
throws
Exception {
/**
* 1、得到Session
*/
Properties properties =
new
Properties();
properties.setProperty(
"mail.host"
,
"smtp.163.com"
);
// 指定邮箱服务器名称
properties.setProperty(
"mail.smtp.auth"
,
"true"
);
// 指定是否需要认证
// 创建认证器对象
Authenticator authenticator =
new
Authenticator() {
protected
PasswordAuthentication getPasswordAuthentication() {
return
new
PasswordAuthentication(
"*****"
,
"*****"
);
// 用户名(@之前)和密码
}
};
Session session = Session.
getInstance
(properties, authenticator);
/**
* 2、创建邮件对象
*/
MimeMessage msg =
new
MimeMessage(session);
// 创建邮件对象
// 设置发件人
msg.setFrom(
new
InternetAddress(
"*****@163.com"
));
// 设置收件人 TO -- 收件人;CC -- 抄送人;BCC -- 密送人
msg.addRecipients(RecipientType.
TO
,
"*****@qq.com"
);
// msg.addRecipients(RecipientType.CC, "*****
@qq.com
");
// msg.addRecipients(RecipientType.BCC, "*****
@qq.com
");
// 设置主题
msg.setSubject(
"JAVA发送邮件测试!"
);
/***************** 不带附件的邮件 *************************/
// 设置正文
// msg.setContent("邮件发送测试`````````~~~~~~~", "text/
html
;
charset
=
utf
-8");
/***************** 不带附件的邮件 *************************/
/***************** 带附件的邮件 *************************/
MimeMultipart partList =
new
MimeMultipart();
// 向partList中添加部件
MimeBodyPart part1 =
new
MimeBodyPart();
// 创建一个部件!
// 设置部件的内容
part1.setContent(
"带附件邮件测试"
,
"text/html;charset=utf-8"
);
// 把部件添加到集合中
partList.addBodyPart(part1);
// 向partList中添加部件
MimeBodyPart part2 =
new
MimeBodyPart();
// 创建一个部件!
// 设置附近文件
part2.attachFile(
new
File(
"d:/摩托车.jpg"
));
// 设置附件名称,并处理编码
part2.setFileName(MimeUtility.
encodeText
(
"摩托车.jpg"
));
// 把部件添加到集合中
partList.addBodyPart(part2);
// 把集合设置为邮件的主体!
msg.setContent(partList);
/***************** 带附件的邮件 *************************/
/**
* 3、发送邮件
*/
Transport.
send
(msg);
}
}