大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程

Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程

更新時間:2020-05-11 16:29:16 來源:動力節(jié)點 瀏覽3034次

Socket是兩個程序之間進行雙向數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)通訊端點,有一個地址和一個端口號來標識。每個服務(wù)程序在提供服務(wù)時都要在一個端口進行,而想使用該服務(wù)的客戶機也必須連接該端口。Socket因為是基于傳輸層,所以它是比較原始的通訊協(xié)議機制。通過Socket的數(shù)據(jù)表現(xiàn)形式為字節(jié)流信息,因此通訊雙方要想完成某項具體的應(yīng)用則必須按雙方約定的方式進行數(shù)據(jù)的格式化和解釋,我們可以看出使用Socket編程比較麻煩,但是它具有更強的靈活性和更廣泛的使用領(lǐng)域。

Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程

    服務(wù)器端:

    InputStream——輸入流,是用來接收來自客戶端的數(shù)據(jù)。

    OutputStream——-輸出流,是服務(wù)器向客戶端發(fā)送的數(shù)據(jù)。

    客戶端:

    InputStream——輸入流,是用來接收來自服務(wù)端的數(shù)據(jù)。

    OutputStream——-輸出流,是客戶端向服務(wù)器端發(fā)送的數(shù)據(jù)。

    下面我們就通過具體的代碼來演示一下

    Server端

    首先調(diào)用ServerSocket類以某個端口號為參數(shù),創(chuàng)建一個ServerSocket對象,即是服務(wù)器端的服務(wù)程序在該指定端口監(jiān)聽的Socket。

    服務(wù)器端程序使用ServerSocket對象的accept()方法,接收來自客戶機程序的連接請求,此時服務(wù)器端將一直保持停滯狀態(tài),直到收到客戶端發(fā)來的連接請求,此時該方法將返回一個新建的Socket類的實例,代表和客戶機建立的通訊鏈路在服務(wù)程序內(nèi)的通訊端點。如果采用Java的多線程編程方法,可以實現(xiàn)并發(fā)服務(wù)器,繼續(xù)監(jiān)聽來自其他客戶的連接請求。

    使用新建的Socket對象創(chuàng)建輸入、輸出流對象。

    使用流對象的方法完成和客戶端的數(shù)據(jù)傳輸,按約定協(xié)議識別并處理來自客戶端的請求數(shù)據(jù),并把處理的結(jié)果返回給客戶端。

    客戶端工作完畢后,則服務(wù)器端程序關(guān)閉和客戶端通訊的流和通訊的Socket。

    在服務(wù)器程序運行結(jié)束之間,應(yīng)當關(guān)閉用來監(jiān)聽的Socket.

    下面來看看具體的代碼實現(xiàn)

Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程

Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程

    Client客戶端

    首先調(diào)用Socket類的構(gòu)造函數(shù),以服務(wù)器的指定的IP地址或指定的主機名和指定的端口號為參數(shù),創(chuàng)建一個Socket流,在創(chuàng)建Socket流的過程中包含了向服務(wù)器請求建立通訊連接的過程實現(xiàn)。

    建立了客戶端通訊Socket后。就可以使用Socket的方法getInputStream()和getOutputStream()來創(chuàng)建輸入/輸出流。這樣,使用Socket類后,網(wǎng)絡(luò)輸入輸出也轉(zhuǎn)化為使用流對象的過程。

    使用輸入輸出流對象的相應(yīng)方法讀寫字節(jié)流數(shù)據(jù),因為流連接著通訊所用的Socket,Socket又是和服務(wù)器端建立連接的一個端點,因此數(shù)據(jù)將通過連接從服務(wù)器得到或發(fā)向服務(wù)器。這時我們就可以對字節(jié)流數(shù)據(jù)按客戶端和服務(wù)器之間的協(xié)議進行處理,完成雙方的通訊任務(wù)。

    待通訊任務(wù)完畢后,我們用流對象的close()方法來關(guān)閉用于網(wǎng)絡(luò)通訊的輸入輸出流,在用Socket對象的close()方法來關(guān)閉Socket。

    下面我們來看看客戶端代碼

Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程

    這樣我們就完成java采用Socket實現(xiàn)簡單的網(wǎng)絡(luò)編程,這兩個類可以直接復(fù)制運行

 以上就是動力節(jié)點java培訓(xùn)機構(gòu)的小編針對“Java socket編程步驟,實現(xiàn)網(wǎng)絡(luò)編程”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 奇米网久久 | 伊人精品视频在线观看 | 黄色影院 | 欧美国产成人免费观看永久视频 | 欧美午夜视频一区二区三区 | 精品老司机在线观看视频 | 日本wwwsss| 成人区精品一区二区毛片不卡 | 香焦视频在线观看黄 | 国产欧美一区二区 | 成人欧美一区二区三区在线 | 国内精品伊人久久久影院 | 亚洲国产免费 | 久久天天躁狠狠躁夜夜2020一 | 奇米影视第四色在线 | 国产精品一区二区在线播放 | 精品的一区二区三区 | 免费一级毛片在线播放放视频 | 香蕉国产一区二区 | 国产亚洲一欧美一区二区三区 | 天天射狠狠干 | 一级特黄aaa免费 | 久青草免费视频手机在线观看 | 日本人69视频jizz免费看 | 香港aa三级久久三级不卡 | 国产成人精品免费视 | 2020久久国产精品福利 | 一级特黄特色aa大片 | 国产精品久久久久久久久久影院 | 激情午夜网 | 久草免费在线视频 | 国产精品免费观看网站 | 99色图| 欧美亚洲国产一区 | 黄页网址大全免费观看美女 | 日韩伦理一区二区三区 | 一级毛片免费 | 欧美另类网 | 性感毛片 | 最新精品国产 | 婷婷激情在线 |