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

































在此程序中首先創(chuàng)建了一個ServerSocket對象,并指明了它的端口,客戶端通過IP和這個端口和服務(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());
這條語句就和客戶端建立了一根虛擬的通道。
看客戶端程序:


























客戶端程序:通過
Socket client=new Socket("LocalHost",1526);新建一個Socket對象,并指明了要向哪臺電腦建立連接及該電腦的端口,“LocalHost”是本臺電腦的IP,也可以寫成“127.0.0.1”,如果和其他電腦連接則改為那臺電腦的IP。端口號一定要和服務(wù)器端的客戶端一致,否則出現(xiàn)異常。
運(yùn)行時首先啟動服務(wù)器端程序,然后再啟動客戶端程序。
運(yùn)行結(jié)果:
服務(wù)器端控制臺顯示:
啟動服務(wù)器端顯示:
客戶端連接后顯示:
客戶端控制臺顯示:
這個程序只是簡單說明了一下TCP協(xié)議,還有很多東西沒有寫出來,有不對的地方希望大家批評指正,沒時間了我還要上課,先寫到這吧。