freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于udp網(wǎng)絡(luò)通信系統(tǒng)的服務(wù)端程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告(編輯修改稿)

2024-10-01 15:10 本頁面
 

【文章內(nèi)容簡介】 t != null) ()。 //關(guān)閉連接 } } catch (IOException e) { // TODO Autogenerated catch block ()。 } } 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 14 頁 共 31 頁 } 運(yùn)行程序 運(yùn)行程序,要結(jié)合 服務(wù)器端程序 ,運(yùn)行服務(wù)器端程序,結(jié)果如圖 12。 圖 12 服務(wù)器程序運(yùn)行結(jié)果 運(yùn)行客戶端程序,得出客戶端如圖 13。 圖 13 客戶端程序運(yùn)行結(jié)果 客戶端對話框輸入所要連接的服務(wù)器的 IP 地址,進(jìn)行客戶端和服務(wù) 器端的連接,連接后,出現(xiàn)如圖 14 結(jié)果 。 圖 14 服務(wù)器和客戶端連接 接下來,客戶端和服務(wù)器端進(jìn)行連接后,可以進(jìn)行正常的聊天了。其程序執(zhí)行結(jié)果如圖 15 所示。 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 15 頁 共 31 頁 圖 15 服務(wù)器和客戶端之間的 聊天 通訊 接下來是在客戶端下載服務(wù)器上的文件。 圖 16 請求在客戶端上下載服務(wù)器上的文件 圖 17 在客戶端登陸上服務(wù)器 圖 18 在客戶端成功下載 服務(wù)器上的文件 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 16 頁 共 31 頁 4 結(jié)束語 經(jīng)過兩個(gè)星期的學(xué)習(xí)和實(shí)踐,我也算是順利的完成了 這次 課程設(shè)計(jì),在實(shí)踐過程中遇到了很多的困難,感覺自己很難將理論與實(shí)踐相結(jié)合,覺得我們學(xué)習(xí)的那些知識(shí)也派不上用場,通過這次課設(shè),我深刻的認(rèn)識(shí)到實(shí)踐與理論必須要想結(jié)合才 能使所學(xué)的知識(shí)變成可用的,通過自己的努力和老師同學(xué)們的幫助, 多了一種看待問題的角度;我也發(fā)現(xiàn)了我所學(xué)知識(shí) 不扎實(shí) , 只是走馬觀花的應(yīng)付考試,在以后的學(xué)習(xí)中需要時(shí)刻的告誡自己,踏踏實(shí)實(shí)做好每一步。 本次課程設(shè)計(jì)是利用 java 語言編寫的,雖說自己以前接觸過這種語言,但是經(jīng)過這兩周的學(xué)習(xí),我受益匪淺。首先,我進(jìn)一步弄懂了 JAVA 語言的編程方法和原則,并學(xué)會(huì)了編寫 java 程序。其次,使我更深層次的理解到 JAVA 語言是一種面向?qū)ο蟮恼Z言,具有可視化編程的特點(diǎn)且代碼具有可移植等特點(diǎn)。本次課程設(shè)計(jì)是實(shí)現(xiàn)一個(gè) UDP 即時(shí)通訊程序 。經(jīng)過編寫程序和運(yùn)行,調(diào)試程序,我對java 語言有了更深的了解。另外,使我對 UDP 協(xié)議的特點(diǎn)和工作過程有了更深的了解。 UDP 協(xié)議提供無連接的、不可靠的服務(wù)。它工作于傳輸層,是傳輸層的重要協(xié)議之一。最后, UDP 協(xié)議是利用客戶端和服務(wù)器端模型來實(shí)現(xiàn)傳輸?shù)摹? 本次課程設(shè)計(jì)使我明白了知識(shí)的重要性,同時(shí)也更加懂得實(shí)踐更不可少。我們要經(jīng)常把所學(xué)的知識(shí)運(yùn)用到實(shí)踐,這樣,才能充分的融會(huì)貫通。同時(shí),也使我認(rèn)識(shí)到自己動(dòng)手能力太差,為我以后的學(xué)習(xí)和發(fā)展提供了一個(gè)警鐘!本次課程設(shè)計(jì)的過程中,雖然遇到了不少問題,但最后還是成功的完成 了。 這次課設(shè)對于我而言是有很大的收獲,懂得獨(dú)立尋找資料學(xué)習(xí),這是最大的收獲,在以后的工作中肯定會(huì)面臨不懂得問題,有了這次課設(shè)的經(jīng)驗(yàn),就能夠去獨(dú)立學(xué)習(xí)并解決困難。 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 17 頁 共 31 頁 參考文獻(xiàn) [1] .潘愛民.計(jì)算機(jī)網(wǎng)絡(luò)(第四版).清華大學(xué)出版社, 2020 [2]孫衛(wèi)琴. JAVA 面向?qū)ο缶幊蹋娮庸I(yè)出版社 , 2020 [3] 張立 等 . 基于 Client/Server 模式的數(shù)據(jù)庫應(yīng)用軟件的設(shè)計(jì)與實(shí)現(xiàn) . 計(jì)算機(jī)應(yīng)用研究 [J], 1999 [4] 俞俊 / 李功 / 汪曉平 . Java 網(wǎng)絡(luò) 編程.清華大學(xué)出版社, 2020 [5] 謝希仁 . 計(jì)算機(jī)網(wǎng)絡(luò)(第四版) [M]. 電子工業(yè)出版社, 2020 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 18 頁 共 31 頁 附錄 1: 聊天模塊 客戶端程序設(shè)計(jì)清單 package 。 import 。 import 。 import 。 import 。 import 。 import 。 public class Client { public static void main(String[] args) { new UDPClient().start()。 //調(diào)用 UDPClient()函數(shù) ,啟動(dòng)客戶端 }} class UDPClient extends Thread { public UDPClient() { } public void run() { //和服務(wù)器之間進(jìn)行連接 (請輸入所要通訊的服務(wù)器的地址: )。 String serverip = null。 //定義一個(gè)數(shù)組 ,用來保存服務(wù)器地址 ,初始化為 NULL. //進(jìn)行異常處理 try { serverip = new BufferedReader(new InputStreamReader()).readLine()。 //取得輸入的服務(wù)器地址 } catch (IOException e1) { //錯(cuò)誤處理 ()。 }finally{ try { 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 19 頁 共 31 頁 DatagramSocket socket = new DatagramSocket()。 //建立 Socket連接 //實(shí)現(xiàn)服務(wù)器和客戶端程序間的不間斷通訊 while (true) { // 發(fā)送 (客戶端發(fā)送的 消息為: )。 //打印消息 String send = new BufferedReader(new InputStreamReader()).readLine()。 //讀入客戶機(jī)輸入的消息 byte[] outstr = new byte[()]。 //定義一個(gè)字節(jié)數(shù)組 ,長度為客戶端所發(fā)送的消息長度 outstr = ()。 //將得到的客戶端消息保存數(shù)組中 IAddress address = (serverip)。 DatagramPacket packet = new DatagramPacket(outstr, , address, 80)。 //向服務(wù)器發(fā)送數(shù)據(jù)報(bào) (packet)。 //發(fā)送數(shù)據(jù)報(bào) // 接收 byte[] instr = new byte[200]。 //定義數(shù)組 ,用來保存接受的數(shù)據(jù) 報(bào) packet = new DatagramPacket(instr, )。 //接收數(shù)據(jù)報(bào) (packet)。 //接收數(shù)據(jù) String out = new String((),0,())。 //取出信息 (接受到的服務(wù)器消息: + out)。 //打印服務(wù)器發(fā)過來的信息 } } catch (Exception e) { // 錯(cuò)誤處理 ()。} }} } 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 20 頁 共 31 頁 附錄 2: 聊天模塊 服務(wù)器程序設(shè)計(jì)清單 package 。 import 。 import 。 import 。 import 。 import 。 public class Server { public static void main(String[] args) { new UDPServer().start()。 //啟動(dòng)服務(wù)器 } } class UDPServer extends Thread { public UDPServer() { } //缺省構(gòu)造函數(shù) public void run() { try { DatagramSocket socket = new DatagramSocket(80)。 //建立一個(gè) Socket連接 ,端口號(hào)為 80 (服務(wù)器 IP地址為: + ().getHostAddress())。 //得到服務(wù)器地址 ,并打印出來 //實(shí)現(xiàn)客戶端和服務(wù)器端的連續(xù)通信 while (true) { // 接收 byte[] instr = new byte[200]。 //定義數(shù)組 ,用來保存客戶端發(fā)送來的數(shù)據(jù) DatagramPacket receive = new DatagramPacket(instr, )。 (receive)。 //接收客戶機(jī)發(fā)過來的數(shù)據(jù) String str = new String(())。 //提取數(shù)據(jù) (客戶端消息: + ())。 //打印客戶機(jī)消息 // 發(fā)送 網(wǎng)絡(luò)協(xié)議編程課程設(shè)計(jì) 第 21 頁 共 31 頁 (接收到的服務(wù)器消息: )。 //打印消息 str = new BufferedReader(new InputStreamReader()).readLine()。 //得到輸入的數(shù)據(jù) byte[] outstr = new byte[()]。 outstr = ()。 DatagramPacket send = new DatagramPacket(outstr, (), ())。 //向客戶機(jī)發(fā)送數(shù)據(jù) (send)。 //執(zhí)行發(fā)送 } } catch (Exception e) { //錯(cuò)誤處理 ()。 } } }
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1