淺談對Socket和Server的理解

   我試着運用java基礎知識和eclipse編程工具來實現聊天室的設計。

    首先,我們得先明白聊天室是一個你說我聽,我說你聽的過程。它由服務器和客戶端組成,我們通過客戶端寫入我們想要發送的話語,服務器就會通過某些方式來讀入這個信息,之後再寫入給需要這個信息的客戶端。那麼,服務器客戶端究竟是靠什麼方式實現信息的交互與中轉呢?

    在JAVA中有一個類Socket類,就是我們所說的套接字,它是兩臺通信的端點,可以理解爲Socket這個類爲服務器和客戶端建立了一個管道(如圖1).

wKioL1Ovu6jhg-xoAAE7wCMQ53Q282.jpg

這樣服務器就實現了與兩個客戶端的連接,形成了Client和Client1的對話。分別與Client和Client1建立了兩個管道,服務器接受到信息後通過new一個Socket對象,假設爲s,通過s.getInputStream()和s.getOutStream()來向管道讀入或寫入信息,反之客戶端一樣new一個Socket對象,同理。所以服務端的輸入流就是客戶端的輸出流,輸入流就是客戶端的輸出流。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章