1.郵件發(fā)送類:
package
com.taihuatalk.taihua.common.common;
/**
*Author:
*CreateDate:2006-06-2522:47:00
*Modifier:
*ModifyDate:2006-06-2522:47:00
*Version:1.0
*Copyright(c)2006泰華網(wǎng)絡(luò)滬ICP備06××××××號(hào)
*Allrightreserved.
*/
import
javax.mail.Transport;
import
javax.mail.internet.InternetAddress;
import
java.util.Date;
import
javax.mail.Message.RecipientType;
import
javax.mail.internet.MimeMessage;
import
javax.mail.Message;
import
javax.mail.Session;
import
java.util.Properties;
import
javax.mail.MessagingException;
import
javax.mail.internet.MimeBodyPart;
import
javax.mail.Multipart;
import
javax.mail.internet.MimeMultipart;
import
org.apache.log4j.Logger;
/**
*發(fā)送Email類
*/
public
class
SendEmail
{
Loggerlogger
=
Logger.getLogger(
this
.getClass());
/**
*Email發(fā)送方法
*
@param
toemails需要一個(gè)字符串參數(shù),用來(lái)設(shè)置收件人地址,如果收件人為多個(gè),則用","隔開(kāi)
*
@param
content郵件內(nèi)容
*
@param
subject郵件主題
*
@return
郵件成功發(fā)送則返回true,否則返回false
*/
public
boolean
sendSimpleEmail(Stringtoemails,Stringcontent,Stringsubject)
{
boolean
result
=
false
;
logger.info(
"
進(jìn)入發(fā)送Email類
"
);
try
{
//
創(chuàng)建屬性對(duì)象
Propertiesprops
=
new
Properties();
//
設(shè)置郵件傳輸協(xié)議為:smtp
props.put(
"
mail.transpost.protocol
"
,
"
smtp
"
);
//
設(shè)置郵件服務(wù)器地址
props.put(
"
mail.smtp.host
"
,
"
smtp.163.com
"
);
//
設(shè)置郵件驗(yàn)證為真
props.put(
"
mail.smtp.auth
"
,
"
true
"
);
//
設(shè)置郵件服務(wù)器端口
props.put(
"
mail.smtp.port
"
,
"
25
"
);
//
調(diào)用驗(yàn)證類進(jìn)行驗(yàn)證,需要參數(shù)發(fā)件人用戶名和密碼
logger.info(
"
驗(yàn)證類實(shí)例化==============
"
);
CheckSendEmailauth
=
new
CheckSendEmail(
"lip009
"
,
"
lip009
"
);
logger.info(
"
驗(yàn)證通過(guò)
"
);
//
創(chuàng)建session對(duì)象
SessionsendMailSession;
sendMailSession
=
Session.getInstance(props,auth);
//
設(shè)置輸出調(diào)試信息
sendMailSession.setDebug(
true
);
logger.info(
"
開(kāi)始創(chuàng)建消息對(duì)象
"
);
//
創(chuàng)建信息對(duì)象
MessagenewMessage
=
new
MimeMessage(sendMailSession);
//
輸入發(fā)送信息
//
設(shè)置發(fā)信人地址
logger.info(
"
設(shè)置發(fā)信人地址
"
);
newMessage.setFrom(
new
InternetAddress(
"
link2friend@163.com
"
));
//
設(shè)置收信人地址,只支持單用戶發(fā)送
//
newMessage.setRecipient(Message.RecipientType.TO,newInternetAddress("lip0091981@163.com"));
//
設(shè)置收信人地址,可以支持多用戶發(fā)送
logger.info(
"
設(shè)置收信人地址
"
);
newMessage.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(toemails));
//
附件
//
==============================================================================
//
msgText是信件的正文,共有兩行
//
StringmsgText=content;
//
msgAttachment是一段字符串作為附件內(nèi)容
//
StringmsgAttachment="Thisisanattachmentstring!";
//
MimeBodyPartmbp1=newMimeBodyPart();
//
mbp1.setText(msgText);
//
把前面定義的msgText中的文字設(shè)定為郵件正文的內(nèi)容
//
創(chuàng)建附件部分
//
MimeBodyPartmbp2=newMimeBodyPart();
//
使用setText(text,charset)來(lái)加入附件
//
mbp2.setText(msgAttachment,"gb2312");
//
創(chuàng)建Multipart
//
Multipartmp=newMimeMultipart();
//
mp.addBodyPart(mbp1);
//
mp.addBodyPart(mbp2);
//
添加Multipart到Message中
//
newMessage.setContent(mp);
//
==============================================================================
//
設(shè)置信件文本格式(當(dāng)設(shè)置了附件,這里就不能有)
logger.info(
"
設(shè)置格式
"
);
newMessage.setContent(
"
SendMail
"
,
"
text/html
"
);
//
設(shè)置信件主題
logger.info(
"
設(shè)置主題
"
);
newMessage.setSubject(subject);
//
設(shè)置信件發(fā)送日期
logger.info(
"
設(shè)置發(fā)送日期
"
);
newMessage.setSentDate(
new
Date());
//
設(shè)置信件正文(當(dāng)設(shè)置了附件,這里就不能有)
newMessage.setText(content);
logger.info(
"
設(shè)置完消息
"
);
//
創(chuàng)建對(duì)象
Transporttransport;
transport
=
sendMailSession.getTransport(
"
smtp
"
);
logger.info(
"
將要發(fā)送
"
);
//
發(fā)送
result
=
true
;
transport.send(newMessage);
//
此處總是拋出異常,讓人很是郁悶,但是郵件卻發(fā)送成功!
logger.info(
"
恭喜你!您的郵件已經(jīng)成功發(fā)送!
"
);
}
catch
(MessagingExceptionex)
{
//
ex.printStackTrace();
}
return
result;
}
}
package
com.taihuatalk.taihua.common.common;
/**
*Author:
*CreateDate:2006-06-2522:47:00
*Modifier:
*ModifyDate:2006-06-2522:47:00
*Version:1.0
*Copyright(c)2006泰華網(wǎng)絡(luò)滬ICP備06××××××號(hào)
*Allrightreserved.
*/
import
javax.mail.
*
;
/**
*Email發(fā)送帳號(hào)密碼驗(yàn)證類
*/
public
class
CheckSendEmail
extends
Authenticator
{
private
Stringm_username
=
null
;
private
Stringm_userpass
=
null
;
public
void
setUsername(Stringusername)
{
m_username
=
username;
}
public
void
setUserpass(Stringuserpass)
{
m_userpass
=
userpass;
}
public
CheckSendEmail(Stringusername,Stringuserpass)
{
super
();
setUsername(username);
setUserpass(userpass);
}
public
PasswordAuthenticationgetPasswordAuthentication()
{
return
new
PasswordAuthentication(m_username,m_userpass);
}
}









































































































































2.郵件帳號(hào)密碼驗(yàn)證類:







































更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
