基于TCP的網(wǎng)絡(luò)通訊程序需要使用的類和常用方法
建立基于TCP的網(wǎng)絡(luò)通訊程序需要兩套程序。
第一套程序,是建立客戶端程序
java.net.Socket[套接字] 創(chuàng)建基于TCP的通訊程序的客戶端對象的java類
構(gòu)造方法
Socket(InetAddress address, int port) 創(chuàng)建流套接字并將其連接到指定IP地址的指定端口號。?
Socket(String host, int port) 創(chuàng)建流套接字并將其連接到指定主機(jī)上的指定端口號。
注意:使用Socket類創(chuàng)建客戶端對象的時候,使用服務(wù)器的ip地址和端口號 ?
實(shí)例方法
OutputStream getOutputStream() 返回客戶端的輸出流?!九c服務(wù)器的輸入流連接】?
InputStream getInputStream() 返回客戶端的輸入流。 【與服務(wù)器的輸出流連接】?
void close() 關(guān)閉客戶端。
第二套程序,是建立服務(wù)器端程序
java.net.ServerSocket 創(chuàng)建基于TCP的通訊程序的服務(wù)器端對象的java類
構(gòu)造方法
ServerSocket(int port) 創(chuàng)建綁定到指定端口的服務(wù)器套接字。
實(shí)例方法
? Socket accept() 偵聽要連接到此套接字并接受它。 【阻塞主線程運(yùn)行】
void close() 關(guān)閉服務(wù)器。?
客戶端程序的開發(fā)步驟:
1.創(chuàng)建客戶端對象【Socket】,連接服務(wù)器
2.通過客戶端對象【Socket】的getInputStream() / getOutputStream(),得到輸入輸出流
3.通過得到的輸入輸出流對象調(diào)用read()/write()方法完成數(shù)據(jù)收發(fā)。
4.關(guān)閉輸入輸出流和客戶端對象【Socket】。
服務(wù)器端程序的開發(fā)步驟:
1.創(chuàng)建服務(wù)器端對象【ServerSocket】,開啟服務(wù)器
2.通過服務(wù)器端對象【ServerSocket】的accept()方法,獲得連接進(jìn)入服務(wù)器的客戶端對象【Socket】
3.連接進(jìn)入服務(wù)器的客戶端對象【Socket】的getInputStream()/getOutputStream(),得到輸入輸出流.
4.通過得到的輸入輸出流對象調(diào)用read()/write()方法完成數(shù)據(jù)收發(fā)。
5.關(guān)閉輸入輸出流和客戶端對象【Socket】以及服務(wù)器端對象【ServerSocket】。