Java使用TCP協(xié)議發(fā)送和接收數(shù)據(jù)方式
Java使用TCP協(xié)議發(fā)送和接收數(shù)據(jù)
1. TCP
TCP是面向連接的可靠傳輸協(xié)議
2. Java使用TCP發(fā)送數(shù)據(jù)代碼
三步:
- (1) 創(chuàng)建客戶端的Socket對(duì)象Socket
- (2) 獲取輸出流,寫數(shù)據(jù)
- (3) 釋放資源
import java.io.IOException; import java.io.OutputStream; import java.net.InetAddress; import java.net.Socket; public class TCPTest01 { public static void main(String[] args) throws IOException { Socket s = new Socket(InetAddress.getByName("uos-pc"), 10086); OutputStream os = s.getOutputStream(); os.write("FTP".getBytes()); s.close(); } }
3. Java使用TCP接收數(shù)據(jù)代碼
四步:
- (1) 創(chuàng)建服務(wù)器Socket對(duì)象ServerSocket
- (2) 監(jiān)聽客戶端鏈接,返回Socket對(duì)象
- (3) 獲取輸入流,讀數(shù)據(jù),控制臺(tái)顯示
- (4) 釋放資源
import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; public class TCPTest02 { public static void main(String[] args) throws IOException { ServerSocket ss = new ServerSocket(10086); Socket s = ss.accept(); InputStream is = s.getInputStream(); byte[] b = new byte[1024]; int len = is.read(b); String data = new String(b, 0, len); System.out.println(data); s.close(); ss.close(); } }
4. 執(zhí)行
分別啟動(dòng)TCPTest01.java和TCPTest02.java
可在控制臺(tái)看到輸出TCP
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java替換jar包中class文件的方法(親測(cè)有用)
這篇文章主要介紹了如何在不重新打包整個(gè)jar包的情況下,僅替換其中的某個(gè)Java類文件,文中通過代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2025-02-02spring boot加載freemarker模板路徑的方法
這篇文章主要介紹了spring boot加載freemarker模板路徑的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11Java詳解實(shí)現(xiàn)ATM機(jī)模擬系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何利用Java語(yǔ)言實(shí)現(xiàn)控制臺(tái)版本的ATM銀行管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06使用Spring MVC攔截器實(shí)現(xiàn)日志記錄的方法
本篇文章主要介紹了使用Spring MVC攔截器實(shí)現(xiàn)日志記錄的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-04-04Mybatis-plus自定義SQL注入器查詢@TableLogic邏輯刪除后的數(shù)據(jù)詳解
這篇文章主要給大家介紹了關(guān)于Mybatis-plus自定義SQL注入器查詢@TableLogic邏輯刪除后的數(shù)據(jù)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-03-03Java報(bào)錯(cuò):UnsupportedOperationException in Collection
在Java編程中,UnsupportedOperationException是一種常見的運(yùn)行時(shí)異常,通常在試圖對(duì)不支持的操作執(zhí)行修改時(shí)發(fā)生,它表示當(dāng)前操作不被支持,本文將深入探討UnsupportedOperationException的產(chǎn)生原因,并提供具體的解決方案和最佳實(shí)踐,需要的朋友可以參考下2024-06-06Mybatis返回類型為Map時(shí)遇到的類型轉(zhuǎn)化的異常問題
這篇文章主要介紹了Mybatis返回類型為Map時(shí)遇到的類型轉(zhuǎn)化的異常問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12web項(xiàng)目WEB-INF下沒有web.xml的解決方法
新手如果在web項(xiàng)目創(chuàng)建后WEB-INF下面沒有出現(xiàn)web.xml,怎么辦?別慌,沒有web.xml文件的原因是因?yàn)樵趧?chuàng)建web項(xiàng)目的時(shí)候沒有把創(chuàng)建web.xml勾上。這篇文章主要介紹了web項(xiàng)目WEB-INF下沒有web.xml的解決方法,需要的朋友可以參考下2022-12-12