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

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

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

    夢幻之旅

    DEBUG - 天道酬勤

       :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
    package org.hvp.test;

    import java.util.Hashtable;

    import javax.naming.NamingException;
    import javax.naming.directory.Attributes;
    import javax.naming.directory.DirContext;
    import javax.naming.directory.InitialDirContext;

    /**
     * 
    @author "惠萬鵬"
     *
     
    */
    public class Smtp
    {
        
    public static String getSmtpServer(String dns, String domain)
                
    throws NamingException
        {
            
    /** 如果domain傳入的是一個email */
            
    if (domain.indexOf("@"> 0)
            {
                domain 
    = domain.substring(domain.indexOf("@"+ 1);
            }
            Hashtable
    <String, String> properties = new Hashtable<String, String>();
            properties.put(
    "java.naming.factory.initial","com.sun.jndi.dns.DnsContextFactory");
            properties.put(
    "java.naming.provider.url""dns://" + dns);
            DirContext ctx 
    = new InitialDirContext(properties);
            Attributes attributes 
    = ctx.getAttributes(domain, new String[] { "MX" });
            String recordMx 
    = (String) attributes.get("MX").get();
            
    if (recordMx != null)
            {
                recordMx 
    = recordMx.substring(recordMx.indexOf(" "+ 1);
            }
            System.out.println(
    "-------->" + recordMx + "<-------");
            
    return recordMx;
        }
        
        
        
        
    public static void main(String[] args) throws NamingException
        {
            Smtp.getSmtpServer(
    "10.1.3.210""hwpok@163.com"); 
        }
    }


    package org.hvp.test;

    import java.net.*;
    import java.io.*;

    public class Test {

        
    private static String END_FLAG = "\r\n";

        
    public static void main(String[] args) throws Exception {
            String mx 
    = "163mx00.mxmail.netease.com";
            InetAddress addr 
    = InetAddress.getByName(mx);
            Socket socket 
    = new Socket(addr, 25);

            InputStream in 
    = socket.getInputStream();
            OutputStream out 
    = socket.getOutputStream();

            
    // 連接成功后服務(wù)器會響應(yīng):
            response(in);

            
    // 首先發(fā)送HELO命令:
            send("HELO www.javasprite.com" + END_FLAG, out);
            response(in);

            
    // 然后發(fā)送發(fā)件人地址:
            send("MAIL FROM: someone@somewhere.com" + END_FLAG, out);
            response(in);

            
    // 設(shè)置收件人地址:
            send("RCPT TO: hwpok@163.com" + END_FLAG, out);
            response(in);

            
    // 開始發(fā)送郵件正文:
            send("DATA" + END_FLAG, out);
            response(in);

            send(
    "From: someone@somewhere.com" + END_FLAG, out);
            send(
    "To: hwpok@163.com" + END_FLAG, out);
            send(
    "Subject: Test without smtp server" + END_FLAG, out);
            send(
    "Content-Type: text/plain;" + END_FLAG, out);
            send(END_FLAG 
    + END_FLAG, out);

            
    // 發(fā)送郵件正文,如果用中文,需要BASE64編碼:
            send("text message body!" + END_FLAG, out);
            
    // 每行以\r\n結(jié)束,不可過長,可拆成多行。

            
    // 以"\r\n.\r\n"作為結(jié)束標(biāo)志:
            send(END_FLAG + "." + END_FLAG, out);
            response(in);

            
    // 結(jié)束并確認發(fā)送:
            send("QUIT" + END_FLAG, out);
            response(in);
            in.close();
            out.close();
            socket.close();
        }

        
    public static void response(InputStream in) throws Exception {
            
    byte[] buffer = new byte[102400];
            
    int n = in.read(buffer);
            
    if(n>0){
                String s 
    = new String(buffer, 0, n);
                System.out.println(s);
            }
        }

        
    public static void send(String s, OutputStream out) throws Exception {
            
    byte[] buffer = s.getBytes();
            
    if(buffer != null && buffer.length>0)
            {
                out.write(buffer);
                out.flush();
            }
        }
    }



    posted on 2008-11-28 18:30 HUIKK 閱讀(218) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 亚洲福利中文字幕在线网址| 久久亚洲成a人片| 美女被免费网站91色| 亚洲四虎永久在线播放| 免费看的成人yellow视频| 国产黄在线播放免费观看| 久久精品国产亚洲av水果派| 国产麻豆剧传媒精品国产免费| 99久久99这里只有免费的精品| 亚洲一级毛片免费观看| 亚洲片国产一区一级在线观看| 1000部拍拍拍18勿入免费凤凰福利 | 国产va免费精品观看精品| 免费大片av手机看片| 麻豆亚洲AV永久无码精品久久| 四虎永久在线精品免费影视| 免费无码中文字幕A级毛片| 老牛精品亚洲成av人片| 久久亚洲AV成人无码| 亚洲色婷婷综合开心网| 西西大胆无码视频免费| 精品视频在线免费观看| 精品一区二区三区免费毛片| 亚洲福利一区二区精品秒拍| 亚洲国产精品丝袜在线观看| 一二三四在线观看免费高清中文在线观看| 国产视频精品免费视频| 亚洲AV无码一区二区一二区| 亚洲精品在线播放视频| 亚洲精品无码久久久久| 国产99视频精品免费视频7| 青青视频观看免费99| 久久国产精品成人免费| 高潮内射免费看片| 亚洲精品无码aⅴ中文字幕蜜桃| 亚洲视频2020| 亚洲春色在线视频| 国产亚洲精品AA片在线观看不加载| 国产美女精品久久久久久久免费| 黄网站色在线视频免费观看| 国产成人久久AV免费|