日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

java 发邮件 简化JavaMail Commons-Email 抄送

發(fā)布時(shí)間:2024/1/18 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 发邮件 简化JavaMail Commons-Email 抄送 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一:Quick Start
通過(guò)SimpleEmail發(fā)送郵件
1 java.lang.Object
2 ??org.apache.commons.mail.Email
3 ??????org.apache.commons.mail.SimpleEmail
1 SimpleEmail?email? = ? new ?SimpleEmail();
2 email.setHostName( " mail.4ya.cn " );
3 email.setAuthentication( " <username> " , " <password> " )
4 email.addTo( " martin.xus@gmail.com " ,? " martin " );
5 email.setFrom( " martin@4ya.cn " ,? " martin " );
6 email.setSubject( " 測(cè)試主題 " );
7 email.setMsg( " 這里是郵件內(nèi)容 " );
8 email.send();
就如代碼里字面上的意思一樣簡(jiǎn)單:
1:創(chuàng)建以SimpleEmail對(duì)象
2:設(shè)定發(fā)送信件的smtp服務(wù)器,如果沒(méi)有設(shè)定,會(huì)尋找系統(tǒng)變量中mail.host值。
3:設(shè)定smtp的用戶和密碼
4:收件人
5:發(fā)件人
6:主題
7:內(nèi)容
8:發(fā)送

二:發(fā)送帶附件的郵件
我們可以發(fā)送本機(jī)的附件,當(dāng)然我們也可以發(fā)送非本機(jī)的附件,如果發(fā)送的是一個(gè)存在網(wǎng)絡(luò)上的附件的url,則郵件發(fā)送的時(shí)候會(huì)自動(dòng)下載,添加到附件中。

?? 1:)發(fā)送本地附件:
1 EmailAttachment?attachment? = ? new ?EmailAttachment();
2 attachment.setPath( " test/test.rar " );
3 attachment.setDisposition(EmailAttachment.ATTACHMENT);
4 attachment.setDescription( " python?resource " );
5 attachment.setName( " resource " );
?? 2:)發(fā)送不存在本地的附件
1 EmailAttachment?attachment? = ? new ?EmailAttachment();
2 attachment.setURL( new ?URL( " http://www.smilinglibrary.org/sldoc/pics/index03.jpg " ));
3 attachment.setDisposition(EmailAttachment.ATTACHMENT);
4 attachment.setDescription( " 微笑圖書(shū)館 " );
5 attachment.setName( " 微笑圖書(shū)館 " );

next,添加附件到我們的郵件中
?1 MultiPartEmail?email? = ? new ?MultiPartEmail();
?2 email.setHostName( " mail.4ya.cn " );
?3??? email.setAuthentication("<username>","<password>")
?4 email.addTo( " martin.xus@gmail.com " ,? " martin " );
?5 email.setFrom( " martin@4ya.cn " ,? " martin " );
?6 email.setSubject( " 郵件主題 " );
?7 email.setMsg( " 郵件內(nèi)容 " );

?8 // 添加附件
?9 email.attach(attachment);
10
11 // 發(fā)送郵件
12 email.send();
如果需要發(fā)送多個(gè)附件,只需創(chuàng)建多個(gè)EmailAttachement,即可
1 email.attach(attachment1)
2 email.attach(attachment2)
三:發(fā)送html格式的郵件
通過(guò)HtmlEmail我們可以發(fā)送Html格式的郵件:

1 java.lang.Object
2 ??org.apache.commons.mail.Email
3 ??????org.apache.commons.mail.MultiPartEmail
4 ??????????org.apache.commons.mail.HtmlEmail
5
如下:
?1 // HtmlEmail!
?2 HtmlEmail?email? = ? new ?HtmlEmail();
?3 email.setHostName( " mail.4ya.cn " );
?3???email.setAuthentication("<username>","<password>")
?5 email.addTo("martin@4ya.cn " martin " );
?6 email.setFrom("martin.xus@gmail.com " martin " );
?7 email.setSubject( "主題:該郵件包括html格式內(nèi)容 " );
?
?8 // ?embed?the?image?and?get?the?content?id
?9 // ?注意這里:embed?將幫助我們創(chuàng)建標(biāo)簽如:cid:xxx?url
10 URL?url? = ? new ?URL( " http://www.apache.org/images/asf_logo_wide.gif " );
11 String?cid? = ?email.embed(url,? " Apache?logo " );
12
13 /**?*/ /**
14set?the?html?message
15我們看到HtmlEmail?extends?Email的,它依然有setMsg(),但是這里發(fā)送的郵件包括了插入在郵件內(nèi)容中的圖片,所以不能在使用了setMsg(),而要以setHtmlMsg?或setTextMsg代碼
16**/

17 email.setHtmlMsg( " <html>The?apache?logo?-?<img?src=\ " cid: " +cid+ " \ " ></html> " );
18
19 // ?set?the?alternative?message
20 email.setTextMsg( " Your?email?client?does?not?support?HTML?messages " );
21
22 // set?mail
23 email.send();
24
四:最后一步
如果需要實(shí)現(xiàn)更復(fù)雜authenticator 你可以extends javax.mail.Authenticator ,實(shí)現(xiàn)你自己的東西,然后調(diào)用 Email.setAuthenticator(javax.mail.Authenticator?newAuthenticator)即可

這一點(diǎn)jakarta也做了,給我們提供了一個(gè)defaultAuthenticator
1 java.lang.Object
2 ??javax.mail.Authenticator
3 ??????org.apache.commons.mail.DefaultAuthenticator
覆蓋掉該方法,實(shí)現(xiàn)你自己的東東 o_o
1 protected ?javax.mail.PasswordAuthentication?getPasswordAuthentication()



?

轉(zhuǎn)自:http://www.blogjava.net/martinx/archive/2005/09/29/14386.html

?

--------------------------------------------------------------------------------------------------------------------

?

addCc(“10792402@qq.com”):添加抄送人地址
addBcc(“10792402@qq.com”):添加密送人地址
addReplyTo(“10792402@qq.com”):添加回復(fù)人地址

總結(jié)

以上是生活随笔為你收集整理的java 发邮件 简化JavaMail Commons-Email 抄送的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。