網路程式設計
1:網路傳輸的七層結構(從下到上)
物理層---〉 資料鏈路層---〉網路層----〉傳輸層----〉會話層----〉表示層----〉應用層
2:各層主要的協議:
傳輸層:tcp/udp
應用層:http/ftp/telnet
3:tcp/udp的區別
tcp:建立連線,安全,效率低,資料是以流的形式傳輸的,有先後順序。
udp:無連線的,不安全,效率高,訊息是以資料報的形式傳輸的,
必須是客戶端先給伺服器發乙個訊息,伺服器才能根據ip和埠號給客戶端發資訊。
4、tcp程式設計步驟:
server端編碼的步驟:
1、new serversocket 開啟埠
2、調serversocket的accept()等待客戶連線,當連線成功返回互動的socket。
3、呼叫socket.getinputstream,getoutputstream獲得伺服器端的io流
4、用處理流封裝後與客戶端互動,記住你讀我寫,一讀一寫。
5、關閉單一客戶端呼叫socket的close(),關閉伺服器調serversocket的close();
socket端編碼步驟:
1、new socket(server ip,server port)試圖連線,如成功才有物件
2、其它參照server端的3,4,5步驟
3、關閉,只有socket的close()方法。
Java網路程式設計 基於TCP協議的網路程式設計(三)
增加聊天室功能 1.可以看到是誰發的訊息。2.實現私聊功能。實現方法 對於第乙個功能,可以使用map集合來儲存使用者資訊 第二個功能可以在客戶端傳送不同訊息時,對這些訊息進行處理,比如在訊息內容前後新增一些特殊字元,通過這些特殊字元來判斷。實現 特殊字元類 public inte ce chatro...
java網路程式設計 執行緒的互斥
執行緒互斥是指某一資源同時只允許乙個訪問者 程式呼叫 對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。引例 package cn.sundroid.thread public class testsynchronized private void init c...
java中的網路程式設計2
urldecoder類包含乙個decode string s,string enc 靜態方法,它可以將看上去是亂碼的特殊字元轉換成普通字串。urlencoder類包含乙個encode string s,string enc 靜態方法,它可以將普通字串轉換成aoolication x www form...