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

正文內(nèi)容

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

  

【正文】 :)。 //receiving int num = (buf)。 (username: + fromUser)。 ()。 while((fromServer = ()) != null){ if((bye)) break。 PrintWriter out = null。 import 。 import 。 //打印消息 str = new BufferedReader(new InputStreamReader()).readLine()。 //啟動(dòng)服務(wù)器 }}class UDPServer extends Thread { public UDPServer() { } //缺省構(gòu)造函數(shù) public void run() { try { DatagramSocket socket = new DatagramSocket(80)。 //打印服務(wù)器發(fā)過(guò)來(lái)的信息 } } catch (Exception e) { // 錯(cuò)誤處理 ()。 //將得到的客戶端消息保存數(shù)組中 InetAddress address = (serverip)。 String serverip = null。import 。UDP協(xié)議提供無(wú)連接的、不可靠的服務(wù)。圖15 服務(wù)器和客戶端之間的聊天通訊接下來(lái)是在客戶端下載服務(wù)器上的文件。 } } } catch (Exception e) { // TODO: handle exception ()。 //定義用戶名密碼 (abc, abc)。 (Disconnected from + ())。 //transmit the file int num = (buf)。 while((inputLine = ()) != null){ //讀取信息 outputLine = (inputLine)。 //執(zhí)行發(fā)送 } } catch (Exception e) { //錯(cuò)誤處理 ()。 //接收客戶機(jī)發(fā)過(guò)來(lái)的數(shù)據(jù) String str = new String(())。 圖11 聊天模塊流程圖根據(jù)UDP協(xié)議的基本特性以及Java語(yǔ)言編程特點(diǎn),然后對(duì)比設(shè)計(jì)流程圖,在Eclipse編程環(huán)境下編寫出實(shí)現(xiàn)該即時(shí)聊天系統(tǒng)的程序,具體步驟如下:,命名為UDPChat。服務(wù)器一方,UDP應(yīng)用程序動(dòng)作如下:(1) 打開通信信道(申請(qǐng)一套接字),通知本地主機(jī)在某一保留端口接收客戶機(jī)請(qǐng)求。數(shù)據(jù)報(bào)的長(zhǎng)度是指包括報(bào)頭和數(shù)據(jù)部分在內(nèi)的總的字節(jié)數(shù)。此協(xié)議默認(rèn)是IP下層協(xié)議。一個(gè)典型的數(shù)據(jù)包就是一個(gè)二進(jìn)制數(shù)據(jù)的傳輸單位。包括網(wǎng)絡(luò)視頻會(huì)議系統(tǒng)在內(nèi)的眾多的客戶/服務(wù)器模式的網(wǎng)絡(luò)應(yīng)用都需要使用UDP協(xié)議。隨著計(jì)算機(jī)網(wǎng)絡(luò)信息技術(shù)的日益發(fā)展和成熟,人們的生活因?yàn)榫W(wǎng)絡(luò)而變得更多姿多彩,基于網(wǎng)絡(luò)的通訊技術(shù)也如同雨后春筍般涌現(xiàn)到網(wǎng)絡(luò)世界中。網(wǎng)絡(luò)聊天已經(jīng)成為人們工作生活中傳遞信息、交流感情的重要工具,給人們帶來(lái)了很大的方便。(3)理解UDP協(xié)議在Java編程語(yǔ)言中的具體體現(xiàn)。基于UDP網(wǎng)絡(luò)通信系統(tǒng)的服務(wù)端程序設(shè)計(jì)學(xué)生姓名:*** 指導(dǎo)老師:*** 摘 要 隨著網(wǎng)絡(luò)技術(shù)的發(fā)展及人們生活的需求,網(wǎng)絡(luò)聊天已越來(lái)越受到人們的青睞 。本課程設(shè)計(jì)將基于UDP協(xié)議和局域網(wǎng)環(huán)境,使用Java語(yǔ)言實(shí)現(xiàn)一個(gè)即時(shí)網(wǎng)絡(luò)通訊程序。(3)理解UDP協(xié)議在Java編程語(yǔ)言中的具體體現(xiàn)。UDP用來(lái)支持那些需要在計(jì)算機(jī)之間傳輸數(shù)據(jù)的網(wǎng)絡(luò)應(yīng)用。 UDP協(xié)議的主要作用是將網(wǎng)絡(luò)數(shù)據(jù)流量壓縮成數(shù)據(jù)包的形式。UDP是定義用來(lái)在互連網(wǎng)絡(luò)環(huán)境中提供數(shù)據(jù)報(bào)交換的計(jì)算機(jī)通信的協(xié)議。 (3)數(shù)據(jù)報(bào)長(zhǎng)度(16位)。(3) 從服務(wù)器方收到最終應(yīng)答結(jié)果,或在不再請(qǐng)求時(shí)關(guān)閉信道并終止客戶機(jī)進(jìn)程。 聊天模塊設(shè)計(jì)流程圖服務(wù)器端設(shè)計(jì)程序得出當(dāng)前服務(wù)器的地址客戶端輸入所要連接的服務(wù)器地址地址是否相同輸入客戶端發(fā)送的信息設(shè)置服務(wù)器端端口號(hào)為80接收客戶端發(fā)送的消息,發(fā)出服務(wù)器消息設(shè)置客戶端端口號(hào)為80接收服務(wù)器發(fā)送到消息,發(fā)出客戶端消息接受客戶端發(fā)送的消息,發(fā)出服務(wù)器消息消息內(nèi)容是否為NULL結(jié)束通訊 即時(shí)通訊程序客戶端/服務(wù)器端聊天模塊設(shè)計(jì)流程圖如圖所示。 (receive)。 //向客戶機(jī)發(fā)送數(shù)據(jù) (send)。 (outputLine)。 //創(chuàng)建字節(jié)輸出流 byte[] buf = new byte[2048]。 ()。 public HandleInput(){ (me, me)。 ()。其程序執(zhí)行結(jié)果如圖15所示。另外,使我對(duì)UDP協(xié)議的特點(diǎn)和工作過(guò)程有了更深的了解。參考文獻(xiàn)[1] .潘愛民.計(jì)算機(jī)網(wǎng)絡(luò)(第四版).清華大學(xué)出版社,2004[2]孫衛(wèi)琴.JAVA面向?qū)ο缶幊蹋娮庸I(yè)出版社,2006[3] 張立 等.基于Client/Server模式的數(shù)據(jù)庫(kù)應(yīng)用軟件的設(shè)計(jì)與實(shí)現(xiàn).計(jì)算機(jī)應(yīng)用研究[J],1999[4] 俞俊 / 李功 / 汪曉平.Java網(wǎng)絡(luò)編程.清華大學(xué)出版社,2005[5] 謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)(第四版)[M].電子工業(yè)出版社,2003附錄1:聊天模塊客戶端程序設(shè)計(jì)清單package 。 //調(diào)用UDPClient()函數(shù),啟動(dòng)客戶端 }}class UDPClient extends Thread { public UDPClient() { } public void run() { //和服務(wù)器之間進(jìn)行連接 (請(qǐng)輸入所要通訊的服務(wù)器的地址:)。 //定義一個(gè)字節(jié)數(shù)組,長(zhǎng)度為客戶端所發(fā)送的消息長(zhǎng)度 outstr = ()。 //取出信息 (接受到的服務(wù)器消息: + out)。public class Server { public static void main(String[] args) { new UDPServer().start()。 //打印客戶機(jī)消息 // 發(fā)送 (接收到的服務(wù)器消息:)。 import 。 import 。 } Socket theSocket = null。 String fromUser, fromServer。 (username: + fromUser)。 fromUser = ()。 byte[] buf = new byte[2048]。 break。 ()。 import 。 import 。 public SimpleServer(Socket socket){ = socket。 (outputLine)。 byte[] buf = new byte[2048]。 ()。 public HandleInput(){ (me, me)。 }else if((password)){ password = (:)[1]。 (Server Started)。 } } } 第30頁(yè) 共30頁(yè)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1