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

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

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

    無限地吸取知識

    快樂就是一生中最大的享受!

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      3 Posts :: 0 Stories :: 2 Comments :: 0 Trackbacks

    今天復習了一下網絡底層的socket編程,socket編程的大致步驟如下:
    1、創建服務器端SocketServer,并定義SocketServer的監聽端口;
    2、ServerSocket調用accept( )方法,是指處于阻塞;
    3、創建客戶端的Socket,并設置服務器的IP和端口;
    4、客戶端發送連接請求,建立連接;
    5、分別取得服務器和客戶端Socket的InputStream和OutputStream;
    6;利用Socket和ServerSocket進行數據傳輸。

    其中比較重要的只是點是文件的I/O操作,以及Socket的幾個主要API:

    1、getInputStream();    //返回Socket接收到的InputStream
    2、getOutputStream(); //返回Socket向外傳輸(另一端為接收)的OutputStream
    3、ServerSocket 的accept() //使服務器處于阻塞狀態,直到客戶端連接

    /*
    *服務器端代碼
    *
    */

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.net.ServerSocket;
    import java.net.Socket;

    public class Server
    {
        
    public static void main(String[] args)
        {
            
    new Server();
        }

        
    public Server()
        {
            
    try
            {
                ServerSocket ss 
    = new ServerSocket(8888);
                
    while (true)
                {
                    
    // 服務器接收消息
                    Socket s = ss.accept();
                    InputStreamReader isr 
    = new InputStreamReader(s
                            .getInputStream());
                    BufferedReader in 
    = new BufferedReader(isr);
                    String line 
    = in.readLine();
                    System.out.println(
    "Client發送的消息是:  " + line);

                    
    // 把成功信息反饋回客戶端
                    PrintWriter out = new PrintWriter(s.getOutputStream(), true);
                    out.println(
    "已經接受到消息了!");

                    out.close();
                    in.close();
                    isr.close();
                    s.close();
                }
            }
            
    catch (IOException e)
            {
                e.printStackTrace();
            }

        }
    }

    /*
    *
    *客戶端代碼
    */
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.net.Socket;
    import java.net.UnknownHostException;

    public class Client
    {
        
    public static void main(String[] args)
        {
            
    new Client();
        }

        
    public Client()
        {
            
    try
            {
                System.out.println(
    "正在連接Server中");

                Socket socket 
    = new Socket("localhost"8888);

                System.out.println(
    "連接成功!");
                System.out.println();

                
    // 向服務器發消息
                PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
                BufferedReader br 
    = new BufferedReader(new InputStreamReader(
                        System.in));
                System.out.print(
    "請輸入信息:");
                out.println(br.readLine());

                
    // 接受服務器端消息
                BufferedReader in = new BufferedReader(new InputStreamReader(socket
                        .getInputStream()));
                System.out.println(
    "Server回復的消息:  " + in.readLine());

                br.close();
                out.close();
                in.close();
                socket.close();
            }
            
    catch (UnknownHostException e)
            {
                e.printStackTrace();
            }
            
    catch (IOException e)
            {
                e.printStackTrace();
            }
        }
    }
    posted on 2007-09-15 17:13 Sylar 閱讀(5957) 評論(1)  編輯  收藏 所屬分類: Java基礎類

    Feedback

    # re: Socket編程實現簡單的服務器與客戶端互發消息 2009-07-01 17:06 jadmin
    如果是多個客戶端呢  回復  更多評論
      


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


    網站導航:
     
    主站蜘蛛池模板: 免费的黄色网页在线免费观看| 亚洲综合精品香蕉久久网97| 亚洲a级在线观看| 18禁美女裸体免费网站| 精品日韩亚洲AV无码| 久9这里精品免费视频| 午夜亚洲AV日韩AV无码大全| 男人j进入女人j内部免费网站| 亚洲欭美日韩颜射在线二| 99在线免费视频| 亚洲国产精品lv| 麻豆国产精品免费视频| 亚洲高清有码中文字| 国产成人精品免费视频软件| 猫咪免费人成在线网站| 亚洲精品自在在线观看| 99在线在线视频免费视频观看| 亚洲成AV人综合在线观看| 毛片基地免费观看| 无忧传媒视频免费观看入口| 国产亚洲精品激情都市| 香港a毛片免费观看| 中文字幕 亚洲 有码 在线| 国产精品免费视频播放器| 久久国产免费直播| 亚洲自偷精品视频自拍| 韩国18福利视频免费观看| 一级做a爰性色毛片免费| 亚洲天堂男人天堂| 免费看片免费播放| 成人妇女免费播放久久久| 亚洲国产高清在线精品一区 | 亚洲乱码中文字幕在线| gogo全球高清大胆亚洲| 日韩免费高清大片在线| 亚洲国产精品无码久久98| 亚洲va无码专区国产乱码| 成年女人男人免费视频播放| 国产大片免费天天看| 91丁香亚洲综合社区| 亚洲AV永久无码精品|