posts - 495,  comments - 11,  trackbacks - 0

          apache的commons項(xiàng)目下有個(gè)email子項(xiàng)目,它對JavaMail API進(jìn)行了封裝,用起來特變方便。在開始之前,需要做以下準(zhǔn)備:

          1、JavaMail API

          添加JavaMail API里的mail包到CLASSPATH里,JavaMail API下載地址:http://java.sun.com/products/javamail/downloads/index.html

          2、commons email

          下載地址:http://www.apache.org/dist/commons/email/

          工程目錄結(jié)構(gòu)如下:

          以下給出兩個(gè)簡單示例程序

          // SendMail.java 使用SimpleEmail發(fā)郵件

          package com.apache.commons.email.demo;

          import org.apache.commons.mail.SimpleEmail;

          public class SendMail
          {
          ??? public static void main ( String[] arg ) throws Exception
          ??? {
          ??? // 使用SimpleEmail對于中文內(nèi)容,可能會(huì)產(chǎn)生亂碼
          ??????? SimpleEmail email = new SimpleEmail ( );

          ??????? // SMTP服務(wù)器名
          ??????? email.setHostName ( "smtp.163.com" );
          ??????? // 登陸郵件服務(wù)器的用戶名和密碼
          ??????? email.setAuthentication ( "peki", "123456" );
          ??????? // 接收人
          ??????? email.addTo ( "jstio@qq.com", "曦勤" );
          ??????? // 發(fā)送人
          ??????? email.setFrom ( "peki@163.com", "小陳" );
          ??????? // 標(biāo)題
          ??????? email.setSubject ( "Test message" );
          ??????? // 郵件內(nèi)容
          ??????? email.setMsg ( "This is a simple test of commons-email<br>我是小陳" );
          ??????? // 發(fā)送
          ??????? email.send ( );
          ???????
          ??????? System.out.println ( "Send email successful!" );

          ??? }
          }

          收信結(jié)果如下:

          This is a simple test of commons-email<br>????

          有亂碼產(chǎn)生,并且html內(nèi)容沒有正常顯示

          // MailSender.java?? 使用HtmlEmail發(fā)郵件

          package com.apache.commons.email.demo;

          import org.apache.commons.mail.EmailException;
          import org.apache.commons.mail.HtmlEmail;

          public class MailSender {


          public static void main(String[] args) {
          ?? // 不要使用SimpleEmail,會(huì)出現(xiàn)亂碼問題
          ?? HtmlEmail email = new HtmlEmail();
          ?? try {
          ??? // 這里是SMTP發(fā)送服務(wù)器的名字:,163的如下:
          ??? email.setHostName("smtp.163.com");
          ??? // 字符編碼集的設(shè)置
          ??? email.setCharset("gbk");
          ??? // 收件人的郵箱
          ??? email.addTo("jstio@qq.com");
          ??? // 發(fā)送人的郵箱
          ??? email.setFrom("peki@163.com", "小陳");
          ??? // 如果需要認(rèn)證信息的話,設(shè)置認(rèn)證:用戶名-密碼。分別為發(fā)件人在郵件服務(wù)器上的注冊名稱和密碼
          ??? email.setAuthentication("peki", "123456");
          ??? email.setSubject("下午3:00會(huì)議室討論,請準(zhǔn)時(shí)參加");
          ??? // 要發(fā)送的信息,由于使用了HtmlEmail,可以在郵件內(nèi)容中使用HTML標(biāo)簽
          ??? email.setMsg("下午3:00會(huì)議室討論,請準(zhǔn)時(shí)參加<BR>呵呵~!");
          ??? // 發(fā)送
          ??? email.send();
          ???
          ??? System.out.println ( "郵件發(fā)送成功!" );
          ?? } catch (EmailException e) {
          ??? // TODO Auto-generated catch block
          ??? e.printStackTrace();
          ??? System.out.println ( "郵件發(fā)送失敗!" );
          ?? }

          }

          }

          收信結(jié)果如下:

          下午3:00會(huì)議室討論,請準(zhǔn)時(shí)參加
          呵呵~!
          沒有產(chǎn)生亂碼,html內(nèi)容正常顯示
          以上程序盡供參考,如需要在開發(fā)中使用,還得深入研究
          posted on 2008-06-21 22:12 jadmin 閱讀(3476) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 庆云县| 抚宁县| 眉山市| 五河县| 锦州市| 广河县| 正镶白旗| 彭水| 阿拉善右旗| 左贡县| 西平县| 湾仔区| 林口县| 吉首市| 湖南省| 廊坊市| 盘锦市| 承德县| 二手房| 吕梁市| 云林县| 沙湾县| 汉源县| 成武县| 滕州市| 晋城| 大邑县| 山东省| 西贡区| 汝州市| 鹤岗市| 恭城| 明水县| 庆城县| 西乌珠穆沁旗| 香港 | 勃利县| 永定县| 八宿县| 同江市| 弋阳县|