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

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

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

    把困難踩在腳下

    迎難而上

     

    初寫TCP通信程序

    Tcp通信協(xié)議是基于OSI標(biāo)準(zhǔn)協(xié)議,有應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、物理層+數(shù)據(jù)鏈路層。TCP采用三次握手,所謂“三次握手”就是A向B發(fā)出連接請(qǐng)求,B向A發(fā)出收到消息,然后A向B發(fā)出收到消息。這樣可以提高通信連接的可靠性。TCP通信可以用Socket套接字實(shí)現(xiàn),Socket正如它的英文名稱“插座”一樣,兩臺(tái)電腦要想實(shí)現(xiàn)通信,每臺(tái)電腦就是一個(gè)插座,用一根虛擬的導(dǎo)線將兩個(gè)插座連接一起,就可以實(shí)現(xiàn)通信。

    下面看程序:

    先看服務(wù)器端:

     

    package com.dr.me; 

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

    public class MyServer {
        
    public static void main(String args[]) throws IOException
        
    {
            
    //創(chuàng)建一個(gè)ServerSocket對(duì)象實(shí)例
            ServerSocket  ss=new ServerSocket(1526);
            
    //創(chuàng)建一個(gè)Socket實(shí)例對(duì)象,用來接受客戶端傳過來的Socket
            Socket client=null;
            System.out.println(
    "等待客戶端的連接、、、、、");
            
    //程序運(yùn)行到此就會(huì)阻塞,除非有客戶端連接
            client=ss.accept();
            System.out.println(
    "有客戶連接上了---");
            
    //創(chuàng)建和客戶端的通信通道
            BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));
            PrintStream out
    =new PrintStream(client.getOutputStream());
            
    //向客戶端輸出信息
            out.println("Hello how are you?");
            
    //關(guān)閉輸入輸出流
            in.close();
            out.close();
        }
     

    }
     

    在此程序中首先創(chuàng)建了一個(gè)ServerSocket對(duì)象,并指明了它的端口,客戶端通過IP和這個(gè)端口和服務(wù)器端進(jìn)行連接。程序運(yùn)行到此:

    client=ss.accept();就不在往下運(yùn)行直到有客戶端連接上,在繼續(xù)往下執(zhí)行。通過   BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));
            PrintStream out=new PrintStream(client.getOutputStream());
    這條語(yǔ)句就和客戶端建立了一根虛擬的通道。

    看客戶端程序:

     

    package com.dr.me; 

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.Socket;
    import java.net.UnknownHostException; 

    public class MyClient {
        
    public static void main(String args[]) throws UnknownHostException, IOException
        
    {
            
    //創(chuàng)建Socket實(shí)例對(duì)象
            Socket client=new Socket("LocalHost",1526);
            
    //創(chuàng)建String對(duì)象用來盛放從服務(wù)器端傳過來的信息,起一個(gè)緩沖作用
            String str=null;
            
    //和服務(wù)器端建立通信連接
            BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));
            
    //讀取服務(wù)器端發(fā)過來的信息放在String對(duì)象中
            str=in.readLine();
            
    //把信息輸出到控制臺(tái)上
            System.out.println(str);
        }
     

    }
     

    客戶端程序:通過

    Socket client=new Socket("LocalHost",1526);

    新建一個(gè)Socket對(duì)象,并指明了要向哪臺(tái)電腦建立連接及該電腦的端口,“LocalHost”是本臺(tái)電腦的IP,也可以寫成“127.0.0.1”,如果和其他電腦連接則改為那臺(tái)電腦的IP。端口號(hào)一定要和服務(wù)器端的客戶端一致,否則出現(xiàn)異常。

    運(yùn)行時(shí)首先啟動(dòng)服務(wù)器端程序,然后再啟動(dòng)客戶端程序。

    運(yùn)行結(jié)果:

    服務(wù)器端控制臺(tái)顯示:

    啟動(dòng)服務(wù)器端顯示:

    1

    客戶端連接后顯示:

    3

    客戶端控制臺(tái)顯示:

    2

    這個(gè)程序只是簡(jiǎn)單說明了一下TCP協(xié)議,還有很多東西沒有寫出來,有不對(duì)的地方希望大家批評(píng)指正,沒時(shí)間了我還要上課,先寫到這吧。

    posted on 2010-11-12 09:30 馮魁 閱讀(265) 評(píng)論(0)  編輯  收藏


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


    網(wǎng)站導(dǎo)航:
     

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    快樂每一天!

    Everything is an object!

    常用鏈接

    留言簿(2)

    隨筆檔案

    學(xué)習(xí)網(wǎng)站

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 免费在线视频一区| 亚洲精品美女久久7777777| 精品久久久久久亚洲中文字幕| 亚洲色婷婷六月亚洲婷婷6月| 在线观着免费观看国产黄| 1000部拍拍拍18勿入免费视频下载| 国产亚洲Av综合人人澡精品| 亚洲乱色熟女一区二区三区丝袜| 日韩高清在线高清免费| 国产成人福利免费视频| 一区二区免费视频| 精品久久亚洲中文无码| 又黄又爽无遮挡免费视频| 日韩精品免费一级视频| 免费国产黄网站在线观看动图| 亚洲好看的理论片电影| 日韩一级免费视频| 久久受www免费人成_看片中文| 香港经典a毛片免费观看看| 浮力影院亚洲国产第一页| 67194熟妇在线永久免费观看 | 最近在线2018视频免费观看| 成人自慰女黄网站免费大全| 男人j进女人p免费视频| 真正全免费视频a毛片| 国产精品亚洲AV三区| 亚洲综合色婷婷在线观看| 亚洲情A成黄在线观看动漫软件| 亚洲综合一区二区国产精品| 国产无遮挡又黄又爽免费视频| 在线a级毛片免费视频| 国内精自视频品线六区免费| 91老湿机福利免费体验| 十八禁无码免费网站| 久久免费美女视频| 免费看一级一级人妻片| 国产亚洲视频在线播放大全| 亚洲AV无码一区二区三区电影| 亚洲av综合av一区二区三区 | 95老司机免费福利| 无码av免费毛片一区二区|