java學習小筆記(三 socket通訊)

2021-06-04 08:04:14 字數 2010 閱讀 4874

三,socket通訊

1.這個人寫的關於socket通訊不錯,循序漸進式的講解,用**示例說明,運用流和socket進行遠端通訊

2.最簡單的socket是乙個服務端對應乙個客戶端

server的寫法

serversocket server = new

serversocket(

10000

);  

socket socket = server.accept();  

bufferedreader in = new

bufferedreader(

newinputstreamreader(socket.getinputstream()));  

printwriter out = new

printwriter(socket.getoutputstream());  

while

(true

)   

}  socket.close(); 

client的寫法

socket socket = new

socket(

"localhost"

, 10000

);  

bufferedreader in = new

bufferedreader(

newinputstreamreader(socket.getinputstream()));  

printwriter out = new

printwriter(socket.getoutputstream());  

bufferedreader reader = new

bufferedreader(

newinputstreamreader(system.in));  

while

(true

)   

system.out.println(in.readline());  

}  socket.close(); 

3.複雜一點的就是多個客戶端同時訪問伺服器。在客戶端使用迴圈啟動多個客戶端訪問同一服務端,在服務端只要

server.accept()一接收到就新建執行緒,然後把把上面的讀寫操作放進執行緒內處理。

4.如果要利用socke傳遞物件,就要讓物件實現

serializable 序列化介面,使用objectinputstream和objectoutputstream進行序列化和反序列化

server的寫法

objectinputstream is = null

;  objectoutputstream os = null

;  try

catch

(ioexception ex)   

} catch

(ioexception ex)  catch

(ioexception ex)   

} catch

(ioexception ex)   

bytes = baos.tobytearray();  

object obj = serializableutil.toobject(bytes);  

myrequestobject = (myrequestobject)obj; 

senddata(socketchannel socketchannel, myresponseobject myresponseobject) 

throws

ioexception   

bytes = baos.tobytearray();  

object obj = serializableutil.toobject(bytes);  

myresponseobject = (myresponseobject) obj;  

socketchannel.socket().shutdowninput(); 

return

myresponseobject;

上面的例子都需要先執行server再執行client。

Python網路程式設計學習筆記一 socket模組

coding utf 8 主要測試python網路程式設計中socket模組的使用 涉及到的技術點 套接字 面向連線的還有非面向連線套接字 tcp面向連線 udp非面向連線 1 匯入socket 2 建立socket socket三要素 1 socket family,2 socket type 3...

Java學習筆記(三)

物件導向高階 集合和例外都是物件導向的核心內容。物件導向高階 修飾符 static 可修飾變數 屬性 可修飾方法 可修飾 塊。static int data語句說明data為類變數,為乙個類的共享變數,屬於整個類。int data為例項變數。例 static int data m1.data 0 m...

java 學習筆記 陣列(三)

標籤 在電腦科學中,陣列資料結構 英語 array data structure 簡稱陣列 英語 array 是由相同型別的元素 element 的集合所組成的資料結構,分配一塊連續的記憶體來儲存。利用元素的索引 index 可以計算出該元素對應的儲存位址。靜態初始化基本型別 int array 靜...