<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的java天地

    JAVAMAIL發送郵件程序

    package ?mail;

    import ?java.util. *
    ;
    import ?javax.mail. *
    ;
    import ?javax.mail.internet. *
    ;
    import
    ?java.util.Date;
    import ?javax.activation. *
    ;
    import ?java.io. *
    ;

    public ? class ?Mail?
    {

    ????
    private ?MimeMessage?mimeMsg;? // ?MIME郵件對象


    ????
    private ?Session?session;? // ?郵件會話對象

    ????
    private ?Properties?props;? // ?系統屬性

    ????
    private ? boolean ?needAuth? = ? false ;? // ?smtp是否需要認證

    ????
    private ?String?username? = ? "" ;? // ?smtp認證用戶名和密碼

    ????
    private ?String?password? = ? "" ;

    ????
    private ?Multipart?mp;? // ?Multipart對象,郵件內容,標題,附件等內容均添加到其中后再生成


    ????
    public ?Mail(String?smtp)? {
    ????????setSmtpHost(smtp);
    ????????createMimeMessage();
    ????}


    ????
    public ? void ?setSmtpHost(String?hostName)? {
    ????????System.out.println(
    " 設置系統屬性:mail.smtp.host?=? " ? +
    ?hostName);
    ????????
    if ?(props? == ? null
    )
    ????????????props?
    = ?System.getProperties();? // ?獲得系統屬性對象

    ????????props.put( " mail.smtp.host " ,?hostName);? // ?設置SMTP主機
    ????}


    ????
    public ? boolean ?createMimeMessage()? {
    ????????
    try ?
    {
    ????????????System.out.println(
    " 準備獲取郵件會話對象! "
    );
    ????????????session?
    = ?Session.getDefaultInstance(props,? null );? // ?獲得郵件會話對象

    ????????}
    ? catch ?(Exception?e)? {
    ????????????System.err.println(
    " 獲取郵件會話對象時發生錯誤! " ? +
    ?e);
    ????????????
    return ? false
    ;
    ????????}

    ????????System.out.println(
    " 準備創建MIME郵件對象! " );
    ????????
    try ?
    {
    ????????????mimeMsg?
    = ? new ?MimeMessage(session);? // ?創建MIME郵件對象

    ????????????mp? = ? new ?MimeMultipart();? // ?mp?一個multipart對象
    ????????????
    // ?Multipart?is?a?container?that?holds?multiple?body?parts.

    ???????????? return ? true ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????System.err.println(
    " 創建MIME郵件對象失敗! " ? +
    ?e);
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? void ?setNeedAuth( boolean ?need)? {
    ????????System.out.println(
    " 設置smtp身份認證:mail.smtp.auth?=? " ? +
    ?need);
    ????????
    if ?(props? == ? null
    )
    ????????????props?
    =
    ?System.getProperties();
    ????????
    if ?(need)?
    {
    ????????????props.put(
    " mail.smtp.auth " ,? " true "
    );
    ????????}
    ? else ? {
    ????????????props.put(
    " mail.smtp.auth " ,? " false "
    );
    ????????}

    ????}


    ????
    public ? void ?setNamePass(String?name,?String?pass)? {
    ????????System.out.println(
    " 程序得到用戶名與密碼 "
    );
    ????????username?
    =
    ?name;
    ????????password?
    =
    ?pass;
    ????}


    ????
    public ? boolean ?setSubject(String?mailSubject)? {
    ????????System.out.println(
    " 設置郵件主題! "
    );
    ????????
    try ?
    {
    ????????????mimeMsg.setSubject(mailSubject);
    ????????????
    return ? true
    ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????System.err.println(
    " 設置郵件主題發生錯誤! "
    );
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? boolean ?setBody(String?mailBody)? {
    ????????
    try ?
    {
    ????????????System.out.println(
    " 設置郵件體格式 "
    );
    ????????????BodyPart?bp?
    = ? new
    ?MimeBodyPart();
    ????????????
    // ?轉換成中文格式

    ????????????bp.setContent(
    ????????????????????
    " <meta?http-equiv=Content-Type?content=text/html;?charset=gb2312> "

    ????????????????????????????
    + ?mailBody,? " text/html;charset=GB2312 " );
    ????????????mp.addBodyPart(bp);
    ????????????
    return ? true
    ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????System.err.println(
    " 設置郵件正文時發生錯誤! " ? +
    ?e);
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? boolean ?addFileAffix(String?filename)? {
    ????????System.out.println(
    " 增加郵件附件: " ? +
    ?filename);
    ????????
    try ?
    {
    ????????????BodyPart?bp?
    = ? new
    ?MimeBodyPart();
    ????????????FileDataSource?fileds?
    = ? new
    ?FileDataSource(filename);
    ????????????bp.setDataHandler(
    new
    ?DataHandler(fileds));
    ????????????
    // System.out.println("文件名:??"+fileds.getName());

    ????????????bp.setFileName( new ?String(fileds.getName().getBytes(), " ISO8859-1 " ));
    ????????????mp.addBodyPart(bp);
    ????????????
    return ? true
    ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????System.err.println(
    " 增加郵件附件: " ? + ?filename? + ? " 發生錯誤! " ? +
    ?e);
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? boolean ?setFrom(String?from)? {
    ????????System.out.println(
    " 設置發信人! "
    );
    ????????
    try ?
    {
    ????????????mimeMsg.setFrom(
    new ?InternetAddress(from));? // ?設置發信人

    ???????????? return ? true ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? boolean ?setTo(String?to)? {
    ????????System.out.println(
    " 設置收信人 "
    );
    ????????
    if ?(to? == ? null
    )
    ????????????
    return ? false
    ;
    ????????
    try ?
    {
    ????????????mimeMsg.setRecipients(Message.RecipientType.TO,?InternetAddress
    ????????????????????.parse(to));
    ????????????
    return ? true
    ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? boolean ?setCopyTo(String?copyto)? {
    ????????System.out.println(
    " 發送附件到 "
    );
    ????????
    if ?(copyto? == ? null
    )
    ????????????
    return ? false
    ;
    ????????
    try ?
    {
    ????????????mimeMsg.setRecipients(Message.RecipientType.CC,
    ????????????????????(Address[])?InternetAddress.parse(copyto));
    ????????????
    return ? true
    ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? boolean ?sendout()? {
    ????????
    try ?
    {
    ????????????mimeMsg.setContent(mp);
    ????????????mimeMsg.saveChanges();
    ????????????System.out.println(
    " 正在發送郵件. "
    );
    ????????????Session?mailSession?
    = ?Session.getInstance(props,? null
    );
    ????????????Transport?transport?
    = ?mailSession.getTransport( " smtp "
    );
    ????????????transport.connect((String)?props.get(
    " mail.smtp.host "
    ),?username,
    ????????????????????password);
    ????????????transport.sendMessage(mimeMsg,?mimeMsg
    ????????????????????.getRecipients(Message.RecipientType.TO));
    ????????????
    // ?transport.send(mimeMsg);

    ????????????System.out.println( " 發送郵件成功! " );
    ????????????transport.close();
    ????????????
    return ? true
    ;
    ????????}
    ? catch ?(Exception?e)? {
    ????????????System.err.println(
    " 郵件發送失敗! " ? +
    ?e);
    ????????????
    return ? false
    ;
    ????????}

    ????}


    ????
    public ? static ? void ?main(String[]?args)? {
    ????????String?mailbody?
    = ? " 發送郵件測試?<font?color=red>歡迎你,java</font> "
    ;
    ????????Mail?themail?
    = ? new ?Mail( " smtp.163.com "
    );
    ????????themail.setNeedAuth(
    true
    );
    ????????
    // ?標題

    ???????? if ?(themail.setSubject( " 發送郵件測試 " )? == ? false )
    ????????????
    return
    ;
    ????????
    // ?郵件內容?支持html?如?<font?color=red>歡迎你,java</font>

    ???????? if ?(themail.setBody(mailbody)? == ? false )
    ????????????
    return
    ;
    ????????
    // ?收件人郵箱

    ???????? if ?(themail.setTo( " xxxxx@139130.net " )? == ? false )
    ????????????
    return
    ;
    ????????
    // ?發件人郵箱

    ???????? if ?(themail.setFrom( " xxxxx@163.com " )? == ? false )
    ????????????
    return
    ;
    ????????
    // ?設置附件

    ???????? if ?(themail.addFileAffix( " C:/Documents?and?Settings/Administrator/桌面/通道預警.txt " )? == ? false )
    ????????????
    return ;? // ?附件在本地機子上的絕對路徑

    ????????themail.setNamePass( " xxxxx@163.com " ,? " password " );? // ?用戶名與密碼,即您選擇一個自己的電郵
    ???????? if ?(themail.sendout()? == ? false )
    ????????????
    return
    ;
    ????}

    }

    posted on 2011-04-25 16:12 tobyxiong 閱讀(400) 評論(0)  編輯  收藏 所屬分類: java

    <2011年4月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    導航

    統計

    常用鏈接

    留言簿(3)

    隨筆分類(144)

    隨筆檔案(157)

    相冊

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 人人公开免费超级碰碰碰视频 | 精品国产免费一区二区三区香蕉| 人妻在线日韩免费视频| 黄色成人免费网站| 亚洲精品无码av天堂| 91亚洲国产成人久久精品网址| 蜜臀亚洲AV无码精品国产午夜.| 免费国产午夜高清在线视频| 在线观看午夜亚洲一区| 亚洲乱理伦片在线观看中字| 免费观看91视频| 亚洲avav天堂av在线不卡| 日韩免费高清一级毛片| 国产成人精品免费午夜app| 中文字幕第13亚洲另类| 亚洲精品中文字幕无码A片老| 午夜免费福利在线观看| 亚洲视频在线免费播放| caoporn成人免费公开| 日韩高清在线免费看| 亚洲福利电影一区二区?| 91视频精品全国免费观看| 免费人成激情视频| 亚洲性色精品一区二区在线| xxxx日本免费| 亚洲国产精品美女久久久久| 在线看片v免费观看视频777 | 国产小视频免费观看| 国内精品久久久久影院亚洲| 8888四色奇米在线观看免费看| 亚洲综合色婷婷七月丁香| 一级特黄aa毛片免费观看| 久久精品亚洲中文字幕无码网站| 久久国产福利免费| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 亚洲成人免费网站| 亚洲日本乱码一区二区在线二产线 | 亚洲精品乱码久久久久久按摩| 国产免费牲交视频免费播放| 久久久久亚洲AV成人片| 久久免费观看国产精品88av|