黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) Java socket編程詳解

Java socket編程詳解

更新時(shí)間:2022-06-06 10:36:51 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽1598次

Java Socket 編程用于在不同 JRE 上運(yùn)行的應(yīng)用程序之間進(jìn)行通信。

Java Socket 編程可以是面向連接的或無(wú)連接的。

Socket 和 ServerSocket 類用于面向連接的套接字編程,DatagramSocket 和 DatagramPacket 類用于無(wú)連接的套接字編程。

套接字編程中的客戶端必須知道兩個(gè)信息:

1.服務(wù)器的 IP 地址,以及

2.端口號(hào)。

在這里,我們將進(jìn)行單向的客戶端和服務(wù)器通信。在此應(yīng)用程序中,客戶端向服務(wù)器發(fā)送消息,服務(wù)器讀取消息并打印。這里使用了兩個(gè)類:Socket 和 ServerSocket。Socket 類用于客戶端和服務(wù)器之間的通信。通過(guò)這個(gè)類,我們可以讀寫消息。ServerSocket 類用于服務(wù)器端。ServerSocket 類的 accept() 方法會(huì)阻塞控制臺(tái),直到客戶端連接。客戶端連接成功后,返回服務(wù)端的Socket實(shí)例。

套接字類

套接字只是機(jī)器之間通信的端點(diǎn)。Socket 類可用于創(chuàng)建套接字。

重要方法

方法 描述
公共輸入流 getInputStream() 返回與此套接字連接的 InputStream。
公共輸出流 getOutputStream() 返回與此套接字連接的 OutputStream。
公共同步無(wú)效關(guān)閉() 關(guān)閉此套接字

服務(wù)器套接字類

ServerSocket 類可用于創(chuàng)建服務(wù)器套接字。該對(duì)象用于建立與客戶端的通信。

重要方法

方法 描述
公共套接字接受() 返回套接字并在服務(wù)器和客戶端之間建立連接。
公共同步無(wú)效關(guān)閉() 關(guān)閉服務(wù)器套接字。

Java Socket 編程示例

創(chuàng)建服務(wù)器:

要?jiǎng)?chuàng)建服務(wù)器應(yīng)用程序,我們需要?jiǎng)?chuàng)建 ServerSocket 類的實(shí)例。在這里,我們使用 6666 端口號(hào)進(jìn)行客戶端和服務(wù)器之間的通信。您也可以選擇任何其他端口號(hào)。accept() 方法等待客戶端。如果客戶端使用給定的端口號(hào)連接,它會(huì)返回一個(gè) Socket 實(shí)例。

ServerSocket ss=新的 ServerSocket(6666 );  
套接字 s=ss.accept(); //建立連接并等待客戶端   

創(chuàng)建客戶端:

要?jiǎng)?chuàng)建客戶端應(yīng)用程序,我們需要?jiǎng)?chuàng)建 Socket 類的實(shí)例。在這里,我們需要傳遞服務(wù)器的 IP 地址或主機(jī)名以及端口號(hào)。在這里,我們使用“localhost”,因?yàn)槲覀兊姆?wù)器在同一系統(tǒng)上運(yùn)行。

套接字 s=新 套接字(“本地主機(jī)” ,6666 );  

讓我們看一個(gè)簡(jiǎn)單的 Java 套接字編程,其中客戶端發(fā)送文本,服務(wù)器接收并打印它。

文件:MyServer.java

導(dǎo)入 java.io.*;  
導(dǎo)入 java.net.*;  
公共類 MyServer {   
公共靜態(tài)無(wú)效 主要(字符串[]參數(shù)){    
試試{  
ServerSocket ss=新的 ServerSocket(6666 );  
套接字 s=ss.accept(); //建立連接   
DataInputStream dis= new  DataInputStream(s.getInputStream());  
字符串 str=(String)dis.readUTF();  
System.out.println( "message=" +str);  
ss.close();  
}捕捉(異常 e){System.out.println(e);}  
}  
}  

文件:MyClient.java

導(dǎo)入 java.io.*;  
導(dǎo)入 java.net.*;  
公共類 MyClient {   
公共靜態(tài)無(wú)效 主要(字符串[]參數(shù)){    
試試{      
套接字 s=新 套接字(“本地主機(jī)” ,6666 );  
DataOutputStream dout= new  DataOutputStream(s.getOutputStream());  
dout.writeUTF( "你好服務(wù)器" );  
dout.flush();  
dout.close();  
s.close();  
}捕捉(異常 e){System.out.println(e);}  
}  
}  

Java Socket 編程示例(讀寫雙方)

在此示例中,客戶端將首先寫入服務(wù)器,然后服務(wù)器將接收并打印文本。然后服務(wù)器將寫入客戶端,客戶端將接收并打印文本。步驟繼續(xù)。

文件:MyServer.java

導(dǎo)入 java.net.*;  
導(dǎo)入 java.io.*;  
類我的 服務(wù)器{  
公共靜態(tài)void  main(String args[])拋出 異常{    
ServerSocket ss=新的 ServerSocket(3333 );  
套接字 s=ss.accept();  
DataInputStream din= new  DataInputStream(s.getInputStream());  
DataOutputStream dout= new  DataOutputStream(s.getOutputStream());  
BufferedReader br= new  BufferedReader( new  InputStreamReader(System.in));   
字符串 str= "" ,str2= "" ;  
而(!str.equals(“停止” )){  
str=din.readUTF();  
System.out.println( "客戶說(shuō):" +str);  
str2=br.readLine();  
dout.writeUTF(str2);  
dout.flush();  
}  
din.close();  
s.close();  
ss.close();  
}}  

文件:MyClient.java

導(dǎo)入 java.net.*;  
導(dǎo)入 java.io.*;  
類我的 客戶{  
公共靜態(tài)void  main(String args[])拋出 異常{    
套接字 s=新 套接字(“本地主機(jī)” ,3333 );  
DataInputStream din= new  DataInputStream(s.getInputStream());  
DataOutputStream dout= new  DataOutputStream(s.getOutputStream());  
BufferedReader br= new  BufferedReader( new  InputStreamReader(System.in));   
字符串 str= "" ,str2= "" ;  
而(!str.equals(“停止” )){  
str=br.readLine();  
dout.writeUTF(str);  
dout.flush();  
str2=din.readUTF();  
System.out.println( "服務(wù)器說(shuō):" +str2);  
}   
dout.close();  
s.close();  
}}  

以上就是關(guān)于“Java socket編程詳解”的介紹,大家如果想了解更多相關(guān)知識(shí),不妨來(lái)關(guān)注一下動(dòng)力節(jié)點(diǎn)的Java視頻教程,里面的課程內(nèi)容由淺到深,通俗易懂,很適合沒(méi)有基礎(chǔ)的小伙伴學(xué)習(xí),希望對(duì)大家能夠有所幫助哦。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 免费看黄视频网站 | 在线视频一区二区三区三区不卡 | 婷婷在线视频观看 | 日本婷婷 | 久久本道综合色狠狠五月 | 亚洲综合偷自成人网第页色 | 麻豆久久精品免费看国产 | 99在线热播精品免费 | 一区二区三区日本 | 香港三级日本三级a视频 | 在线观看嗯啊成人动作片 | 九九亚洲精品自拍 | 日韩欧美视频免费观看 | 亚洲精品福利网站 | 亚洲激情小视频 | 在线毛片免费观看 | 久久亚洲人成国产精品 | 2020久久国产最新免费观看 | 九九亚洲精品 | 国产精品动漫视频网站 | 久久精品视 | 久久精品国产亚洲欧美 | 亚洲成人三级 | 中文字幕一区二区三区精彩视频 | 成人久久18免费网址 | 欧美中文字幕一区二区三区 | 在线成人观看 | 国产福利午夜波多野结衣 | 亚洲国产七七久久桃花 | 午夜视频在线观看免费视频 | 2015小明台湾永久区域免费 | 免费在线观看你懂的 | 农村寡妇野外情一级毛片 | 在线观看国产亚洲 | 欧美日韩一区二区三区高清不卡 | 欧美一级www | 欧美大陆日韩 | 好男人www社区资源在线观看 | 天天做天天爱夜夜爽毛片毛片 | 羞羞影院体验区 | 麻豆va在线精品免费播放 |