打开APP
未登录
开通VIP,畅享免费电子书等14项超值服
开通VIP
首页
好书
留言交流
下载APP
联系客服
简单的邮件收发程序 - AJava
闪宁斯达
>《javax-mail》
2010.09.20
关注
import
javax.mail.*;
public
class
MailAuthenticator
extends
Authenticator
{
//******************************
//由于发送邮件的地方比较多,
//下面统一定义用户名,口令.
//******************************
// public static String HUAWEI_MAIL_USER = "cecfhelp";
// public static String HUAWEI_MAIL_PASSWORD = "hEl66P666";
public
static
String HUAWEI_MAIL_USER =
"lisunchang678"
;
public
static
String HUAWEI_MAIL_PASSWORD =
"lsc6312217"
;
// public static String HUAWEI_MAIL_USER = "309341935";
//
// public static String HUAWEI_MAIL_PASSWORD = "lsc6028517";
public
MailAuthenticator()
{
}
protected
PasswordAuthentication getPasswordAuthentication()
{
return
new
PasswordAuthentication(HUAWEI_MAIL_USER, HUAWEI_MAIL_PASSWORD);
}
}
package
net.csdn.blog.johnston.mail;
/**
* 此处插入类型说明。
* 创建日期:(2009-06-23)
* @author:johnston
*/
import
java.util.*;
import
java.io.*;
import
javax.mail.*;
import
javax.mail.internet.*;
import
javax.activation.*;
public
class
SendMail {
// 要发送Mail地址
private
String mailTo =
null
;
// Mail发送的起始地址
private
String mailFrom =
null
;
// SMTP主机地址
private
String smtpHost =
null
;
// 是否采用调试方式
private
boolean
debug =
false
;
private
String messageBasePath =
null
;
// Mail主题
private
String subject;
// Mail内容
private
String msgContent;
private
Vector attachedFileList;
private
String mailAccount =
null
;
private
String mailPass =
null
;
private
String messageContentMimeType =
"text/html; charset=gb2312"
;
private
String mailbccTo =
null
;
private
String mailccTo =
null
;
/**
*
* SendMailService 构造子注解。
*
*/
public
SendMail() {
super
();
}
private
void
fillMail(Session session, MimeMessage msg)
throws
IOException,
MessagingException {
String fileName =
null
;
Multipart mPart =
new
MimeMultipart();
if
(mailFrom !=
null
) {
msg.setFrom(
new
InternetAddress(mailFrom));
System.out.println(
"发送人Mail地址:"
+ mailFrom);
}
else
{
System.out.println(
"没有指定发送人邮件地址!"
);
return
;
}
if
(mailTo !=
null
) {
InternetAddress[] address = InternetAddress.parse(mailTo);
msg.setRecipients(Message.RecipientType.TO, address);
System.out.println(
"收件人Mail地址:"
+ mailTo);
}
else
{
System.out.println(
"没有指定收件人邮件地址!"
);
return
;
}
if
(mailccTo !=
null
) {
InternetAddress[] ccaddress = InternetAddress.parse(mailccTo);
System.out.println(
"CCMail地址:"
+ mailccTo);
msg.setRecipients(Message.RecipientType.CC, ccaddress);
}
if
(mailbccTo !=
null
) {
InternetAddress[] bccaddress = InternetAddress.parse(mailbccTo);
System.out.println(
"BCCMail地址:"
+ mailbccTo);
msg.setRecipients(Message.RecipientType.BCC, bccaddress);
}
msg.setSubject(subject);
InternetAddress[] replyAddress = {
new
InternetAddress(mailFrom) };
msg.setReplyTo(replyAddress);
// create and fill the first message part
MimeBodyPart mBodyContent =
new
MimeBodyPart();
if
(msgContent !=
null
)
mBodyContent.setContent(msgContent, messageContentMimeType);
else
mBodyContent.setContent(
""
, messageContentMimeType);
mPart.addBodyPart(mBodyContent);
// attach the file to the message
if
(attachedFileList !=
null
) {
for
(Enumeration fileList = attachedFileList.elements(); fileList
.hasMoreElements();) {
fileName = (String) fileList.nextElement();
MimeBodyPart mBodyPart =
new
MimeBodyPart();
// attach the file to the message
FileDataSource fds =
new
FileDataSource(messageBasePath
+ fileName);
System.out.println(
"Mail发送的附件为:"
+ messageBasePath + fileName);
mBodyPart.setDataHandler(
new
DataHandler(fds));
mBodyPart.setFileName(fileName);
mPart.addBodyPart(mBodyPart);
}
}
msg.setContent(mPart);
msg.setSentDate(
new
Date());
}
/**
*
* 此处插入方法说明。
*
*/
public
void
init()
{
}
/**
*
* 发送e_mail,返回类型为int
*
* 当返回值为0时,说明邮件发送成功
*
* 当返回值为3时,说明邮件发送失败
*
*/
public
int
sendMail()
throws
IOException, MessagingException {
int
loopCount;
Properties props = System.getProperties();
props.put(
"mail.smtp.host"
, smtpHost);
props.put(
"mail.smtp.auth"
,
"true"
);
MailAuthenticator auth =
new
MailAuthenticator();
Session session = Session.getInstance(props, auth);
session.setDebug(debug);
MimeMessage msg =
new
MimeMessage(session);
Transport trans =
null
;
try
{
fillMail(session, msg);
// send the message
trans = session.getTransport(
"smtp"
);
try
{
trans.connect(smtpHost, MailAuthenticator.HUAWEI_MAIL_USER,
MailAuthenticator.HUAWEI_MAIL_PASSWORD);
}
catch
(AuthenticationFailedException e) {
e.printStackTrace();
System.out.println(
"连接邮件服务器错误1:"
);
return
3
;
}
catch
(MessagingException e) {
e.printStackTrace();
System.out.println(
"连接邮件服务器错误2:"
);
return
3
;
}
trans.send(msg);
trans.close();
}
catch
(MessagingException mex) {
System.out.println(
"发送邮件失败:"
);
mex.printStackTrace();
Exception ex =
null
;
if
((ex = mex.getNextException()) !=
null
) {
System.out.println(ex.toString());
ex.printStackTrace();
}
return
3
;
}
finally
{
try
{
if
(trans !=
null
&& trans.isConnected())
trans.close();
}
catch
(Exception e) {
System.out.println(e.toString());
}
}
System.out.println(
"发送邮件成功!"
);
return
0
;
}
public
void
setAttachedFileList(java.util.Vector filelist)
{
attachedFileList = filelist;
}
public
void
setDebug(
boolean
debugFlag)
{
debug = debugFlag;
}
public
void
setMailAccount(String strAccount) {
mailAccount = strAccount;
}
public
void
setMailbccTo(String bccto) {
mailbccTo = bccto;
}
public
void
setMailccTo(String ccto) {
mailccTo = ccto;
}
public
void
setMailFrom(String from)
{
mailFrom = from;
}
public
void
setMailPass(String strMailPass) {
mailPass = strMailPass;
}
public
void
setMailTo(String to)
{
mailTo = to;
}
public
void
setMessageBasePath(String basePath)
{
messageBasePath = basePath;
}
public
void
setMessageContentMimeType(String mimeType)
{
messageContentMimeType = mimeType;
}
public
void
setMsgContent(String content)
{
msgContent = content;
}
public
void
setSMTPHost(String host)
{
smtpHost = host;
}
public
void
setSubject(String sub)
{
subject = sub;
}
public
static
void
main(String[] argv)
throws
Exception
{
for
(
int
i =
0
; i <
10
; i++) {
SendMail sm =
new
SendMail();
// sm.setSMTPHost("mail.ec.com.cn");
// sm.setMailFrom("cecfhelp@ec.com.cn");
//sm.setMailTo("309341935@qq.com");
sm.setSMTPHost(
"smtp.163.com"
);
sm.setMailFrom(
"lisunchang678@163.com"
);
sm.setMailTo(
"johnston678@163.com"
);
// sm.setSMTPHost("smtp.qq.com");
// sm.setMailFrom("309341935@qq.com");
// sm.setMailTo("495794927@qq.com");
sm.setMsgContent(
"邮件测试程序"
+ i);
sm.setSubject(
"邮件测试程序"
+ i);
sm.sendMail();
Thread t =
new
Thread();
t.sleep(
10000
);
System.out.println(
"count:"
+ i);
}
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报
。
打开APP,阅读全文并永久保存
查看更多类似文章
猜你喜欢
类似文章
【热】
打开小程序,算一算2024你的财运
JavaMail 深入浅出
利用JavaMail收/发Gmail邮件SSL
Java发邮件 实现步骤+代码
JAVA MAIL 实例
用JavaMail API编写可带附件的邮件发送程序
简单聊天程序java socket
更多类似文章 >>
生活服务
热点新闻
留言交流
回顶部
联系我们
分享
收藏
点击这里,查看已保存的文章
导长图
关注
一键复制
下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!
联系客服
微信登录中...
请勿关闭此页面
先别划走!
送你5元优惠券,购买VIP限时立减!
5
元
优惠券
优惠券还有
10:00
过期
马上使用
×