天天看點

java基礎——網絡程式設計

------ <a href="http://www.itheima.com" target="blank">android教育訓練</a>、<a href="http://www.itheima.comtarget="blank">

java教育訓練</a>、期待與您交流! ---------

java基礎——網絡程式設計

    Socket就是為網絡服務提供的一種機制。

    通信的兩端都有Socket。

    網絡通信其實就是Socket間的通信。

    資料在兩個Socket間通過IO傳輸。

    DatagramSocket(用來發送和接收資料報包的套接字)與DatagramPacket(資料報包)。

    建立發送端,接收端。

    建立資料包。

    調用Socket的發送接收方法。

    關閉Socket。

    發送端與接收端是兩個獨立的運作程式。

運作程式可以得到:

java基礎——網絡程式設計

注:

由于UDP協定傳輸資料,隻管發送資料,而不管接收端是否能夠接收到資料。是以,應該首先啟動接收端程式,再啟動發送端程式。

運作程式後可進行操作

java基礎——網絡程式設計
java基礎——網絡程式設計

     用戶端(Client)首先與服務端(Server)建立連接配接,形成通道(其實就是IO流),然後,資料就可以在通道之間進行傳輸,并且單個Server端可以同時與多個Client端建立連接配接。

    <1>用戶端需要明确伺服器的ip位址以及端口,這樣才可以去試着建立連接配接,如果連接配接失敗,會出現異常。

    <2>連接配接成功,說明用戶端與服務端建立了通道,那麼通過IO流就可以進行資料的傳輸,而Socket對象已經提供了輸入流和輸出流對象,通過getInputStream(),getOutputStream()擷取即可。

    <3>與服務端通訊結束後,關閉Socket。

    <1>服務端需要明确它要處理的資料是從哪個端口進入的。

    <2>當有用戶端通路時,要明确是哪個用戶端,可通過accept()擷取已連接配接的用戶端對象,并通過該對象與用戶端通過IO流進行資料傳輸。

    <3>當該用戶端通路結束,關閉該用戶端。

java基礎——網絡程式設計

注意:

TCP協定傳輸資料必須先開服務端,再開用戶端。否則,用戶端根本連接配接不上服務端

實作多個用戶端通路伺服器

繼續閱讀