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

正文內(nèi)容

基于socket的網(wǎng)絡(luò)聊天系統(tǒng)開發(fā)與設(shè)計(jì)-免費(fèi)閱讀

2025-07-12 17:53 上一頁面

下一頁面
  

【正文】 在完成本畢業(yè)設(shè)計(jì)時(shí),我曾經(jīng)遇到了很多的困難,既有專業(yè)知識(shí)上的,也有心理因素上的。該階段結(jié)束應(yīng)交付測(cè)試報(bào)告,說明測(cè)試數(shù)據(jù)的選擇,測(cè)試用例以及測(cè)試結(jié)果是否符合預(yù)期結(jié)果。只需要單擊窗體底部的“發(fā)送文件按鈕”即可,這是將打開文件選擇框用來選擇需要傳送的文件。如果處理成功,將向數(shù)據(jù)庫(kù)中添加一條用戶記錄。 }}}}} catch (IOException e) {// TODO Autogenerated catch block()。 while(()){ String a =(String) ()。 PrintStream pss = (PrintStream)(a)。String states=(=)[2]。 String tonme=(=)[2]。 StringBuffer sb=new StringBuffer(,)。 } }else{(two)。 Iterator it = ()。if(codeline!=null){(codeline+。class ServerRead extends Thread{Socket srs。s=()。這三層分別是指數(shù)據(jù)庫(kù)服務(wù)器、應(yīng)用程序服務(wù)器以及應(yīng)用程序客戶端。在硬件環(huán)境方面,本系統(tǒng)的實(shí)現(xiàn)需要一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器和一臺(tái)服務(wù)器以及若干的終端電腦。 經(jīng)濟(jì)可行性從經(jīng)濟(jì)可行性的角度出發(fā),系統(tǒng)在開發(fā)的過程中,主要應(yīng)該考慮如何節(jié)約開發(fā)成本,縮短開發(fā)周期,以最小的投入獲得最大的回報(bào)。加之,當(dāng)前類似的系統(tǒng)操作簡(jiǎn)單,使用者能夠很快上手。再者,所有的應(yīng)用程序在運(yùn)行過程中都會(huì)出現(xiàn)出錯(cuò)的情況,這種錯(cuò)誤可能來自于程序本身,也可能是用戶操作的失誤所造成的。 由于我們可以通過 private 關(guān)鍵字來保證數(shù)據(jù)對(duì)象只能被方法訪問,所以我們只需針對(duì)方法提出一套機(jī)制,這套機(jī)制就是 synchronized 關(guān)鍵字,它包括兩種用法:synchronized 方法和 synchronized 塊。CPU 時(shí)間隨時(shí)可能被分配給該線程,從而使得它執(zhí)行。 if(++count== 6) return。 那么如何限制這個(gè)類必須包含這一方法呢?當(dāng)然是使用接口?。m然抽象類也可滿足,但是需要繼承,而我們之所以要采用這種新方法,不就是為了避免繼承帶來的限制嗎?) Java 提供了接口 來支持這種方法。 (創(chuàng)建線程 + number)。多線程和傳統(tǒng)的單線程在程序設(shè)計(jì)上最大的區(qū)別在于,由于各個(gè)線程的控制流彼此獨(dú)立,使得各個(gè)線程之間的代碼是亂序執(zhí)行的,由此帶來的線程調(diào)度,同步等問題。Swing 外觀感覺采用可插入的外觀感覺(Pluggable Look and Feel,PLamp。例如 AWT 缺少剪貼板、打印支持、鍵盤導(dǎo)航等特性,而且原來的 AWT 甚至不包括彈出式菜單或滾動(dòng)窗格等基本元素。如果了解 Unix 系統(tǒng)的輸入和輸出的話,就很容易了解 Socket 了。 getOutputStream 方法連接的另一端將得到輸入,同時(shí)返回一個(gè)OutputStream 對(duì)象實(shí)例。ServerSocket 用于服務(wù)器端,Socket 是建立網(wǎng)絡(luò)連接時(shí)使用的。 在 Inter 上有很多這樣的主機(jī),這些主機(jī)一般運(yùn)行了多個(gè)服務(wù)軟件,同時(shí)提供幾種服務(wù)。凡是要連接到 Inter 的計(jì)算機(jī),都必須同時(shí)安裝和使用這兩個(gè)協(xié)議,因此在實(shí)際中常把這兩個(gè)協(xié)議統(tǒng)稱作 TCP/IP 協(xié)議。這是因?yàn)樗鼮閮膳_(tái)計(jì)算機(jī)之間的連接起了重要作用:當(dāng)一臺(tái)計(jì)算機(jī)需要與另一臺(tái)遠(yuǎn)程計(jì)算機(jī)連接時(shí),TCP 協(xié)議會(huì)讓它們建立一個(gè)連接、發(fā)送和接收資料以及終止連接。 網(wǎng)際協(xié)議 IP 協(xié)議提供了能適應(yīng)各種各樣網(wǎng)絡(luò)硬件的靈活性,對(duì)底層網(wǎng)絡(luò)硬件幾乎沒有任何要求,任何一個(gè)網(wǎng)絡(luò)只要可以從一個(gè)地點(diǎn)向另一個(gè)地點(diǎn)傳送二進(jìn)制數(shù)據(jù),就可以使用 IP 協(xié)議加入 Inter 了。 傳輸層:為兩個(gè)用戶進(jìn)程之間建立、管理和拆除可靠而又有效的端到端連接。?Java 增加了垃圾回收機(jī)制、異常處理和新的限定詞等功能。從一定角度上講,C 語言加上面向?qū)ο蠊δ芫褪?C++。(2)Java 語言的發(fā)展前景在 2022 年的 Java One 開發(fā)者大會(huì)上,James Gosling 做了題為“Java 技術(shù)下一個(gè) 10 年貢獻(xiàn)”的演講,James Gosling 認(rèn)為,Java 技術(shù)提高了計(jì)算的“流動(dòng)性” ,就如同貨幣的發(fā)明提高了商品的流動(dòng)性一樣。具體要實(shí)現(xiàn)的目標(biāo)如下:(1) 實(shí)現(xiàn)用戶的注冊(cè)、登陸、修改信息等功能 (2) 實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的通信,即私聊(3) 實(shí)現(xiàn)一對(duì)多的通信,即群聊 (4) 實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的文件傳輸 。 課題研究?jī)?nèi)容及意義目前已有的一些網(wǎng)絡(luò)聊天系統(tǒng)已經(jīng)非常多了,例如騰訊的 ,網(wǎng)易的泡泡等等。關(guān)鍵詞:Java Socket 通訊協(xié)議 Swing 多線程 Socketbased web chat system development and designAbstractRecent years, with the rapid development of puter technology, especially Inter technology, has profound change to all aspects of people39。這時(shí)過去的種種陳舊的通訊方式,都已經(jīng)不能滿足現(xiàn)代生活的需要。本次設(shè)計(jì)主要以 Socket 網(wǎng)絡(luò)通訊作為基礎(chǔ),并以 Object作為通訊載體,同時(shí)運(yùn)用了一定的通訊協(xié)議知識(shí)開發(fā)完成。但是這些都存在不便利或者費(fèi)用方面的問題,例如電子郵件,雖然費(fèi)用不高,甚至可以免費(fèi)使用,但是無法實(shí)現(xiàn)即時(shí)通訊,只能作為一種輔助交流的通訊手段。這樣員工只需要打開客戶端并登錄到服務(wù)器,就可以與局域網(wǎng)上的其他員工彼此之間發(fā)送信息,并傳送資料了。它的出現(xiàn)是為了彌補(bǔ)當(dāng)時(shí)的編程語言,例如 C、C++等只能對(duì)特定的 CPU 芯片進(jìn)行編譯的缺陷。隨著 Java 的開源,在未來的十年里,Java 的應(yīng)用范圍將變得更廣。?Java 沒有了 C 語言中的預(yù)處理器。 (1)TCP/IP 參考模型 TCP/IP 協(xié)議的開發(fā)研制人員將 Inter 分為五個(gè)層次,以便于理解,它也稱為互聯(lián)網(wǎng)分層模型或互聯(lián)網(wǎng)分層參考模型,如下所示:物理層:對(duì)應(yīng)于網(wǎng)絡(luò)的基本硬件,這也是 Inter 物理構(gòu)成,即我們可以看得見的硬設(shè)備,如 PC 機(jī)、互連網(wǎng)服務(wù)器、網(wǎng)絡(luò)設(shè)備等,必須對(duì)這些硬設(shè)備的電氣特性作一個(gè)規(guī)范,使這些設(shè)備都能夠互相連接幷兼容使用。通信協(xié)議正像兩臺(tái)計(jì)算機(jī)交換信息所使用的共同語言,它規(guī)定了通信雙方在通信中所應(yīng)共同遵守的約定。 (3)傳輸控制協(xié)議 TCP 盡管計(jì)算機(jī)通過安裝 IP 軟件,從而保證了計(jì)算機(jī)之間可以發(fā)送和接收資料,但 IP 協(xié)議還不能解決資料分組在傳輸過程中可能出現(xiàn)的問題。 因此,從上面我們可以了解到:IP 協(xié)議只保證計(jì)算機(jī)能發(fā)送和接收分組資料,而 TCP 協(xié)議則可提供一個(gè)可靠的、可流控的、全雙工的信息流傳輸服務(wù)?,F(xiàn)在,如果在這臺(tái)主機(jī)上運(yùn)行一個(gè) FTP 服務(wù)軟件(該軟件將打開一個(gè) Socket, 并將其綁定到 21 端口) ,再在這臺(tái)主機(jī)上運(yùn)行一個(gè) Web 服務(wù)軟件(該軟件將打開另一個(gè) Socket,并將其綁定到 80 端口) 。在 Java 中所謂 Socket 通常也稱作套接字,用于描述 IP 地址和端口,是一個(gè)通信鏈的句柄。Accept 方法用于產(chǎn)生阻塞,直到接受到一個(gè)連接,并且返回一個(gè)客戶端的 Socket 對(duì)象實(shí)例。Socket 接口是 TCP/IP 網(wǎng)絡(luò)的 API,Socket 接口定義了許多函數(shù)或例程,程序員可以用它們來開發(fā) TCP/IP 網(wǎng)絡(luò)上的應(yīng)用程序。Swing 開發(fā)人員只用很少的代碼就可以利用 Swing 豐富、靈活的功能和模塊化組件來創(chuàng)建優(yōu)雅的用戶界面。由于 AWT 組件通過與具體平臺(tái)相關(guān)的對(duì)等類(Peer)實(shí)現(xiàn),因此 Swing 比 AWT 組件具有更強(qiáng)的實(shí)用性。線程又稱為輕量級(jí)進(jìn)程,它和進(jìn)程一樣擁有獨(dú)立的執(zhí)行控制,由操作系統(tǒng)負(fù)責(zé)調(diào)度,區(qū)別在于線程沒有獨(dú)立的存儲(chǔ)空間,而是和所屬進(jìn)程中的其它線程共享一個(gè)存儲(chǔ)空間,這使得線程間的通信遠(yuǎn)較進(jìn)程簡(jiǎn)單。為了指定我們自己的代碼,只需要覆蓋它!方法一:繼承 Thread 類,覆蓋方法 run(),我們?cè)趧?chuàng)建的 Thread 類的子類中重寫 run() ,加入線程所要執(zhí)行的代碼即可。 i++) new MyThread(i+1).start()。 public MyThread(int num){ number = num。 使用 Runnable 接口來實(shí)現(xiàn)多線程使得我們能夠在一個(gè)類中包容所有的代碼,有利于封裝,它的缺點(diǎn)在于,我們只能使用一套代碼,若想創(chuàng)建多個(gè)線程并使各個(gè)線程執(zhí)行不同的代碼,則仍必須額外創(chuàng)建類,如果這樣的話,在大多數(shù)情況下也許還不如直接用多個(gè)類分別繼承 Thread 來得緊湊。 你可以調(diào)用 Thread 類的方法 getPriority() 和 setPriority()來存取線程的優(yōu)先級(jí),線程的優(yōu)先級(jí)界于 1(MIN_PRIORITY)和 10(MAX_PRIORITY)之間,缺省是 5(NORM_PRIORITY)。因此我們將采用多線程方式的并發(fā)服務(wù)器來設(shè)計(jì)服務(wù)器端,這樣將能從很大程度上提高服務(wù)器的運(yùn)行效率。 社會(huì)可行性隨著計(jì)算機(jī)的發(fā)展與普及,以及互聯(lián)網(wǎng)技術(shù)的擴(kuò)展,很多的公司和企業(yè)都提供了局域網(wǎng)信息服務(wù)。如圖 ,因?yàn)?C/S 以它的靈活性,通用性,易操作性等特點(diǎn)在用戶呈現(xiàn)方面一致是比較好的選擇。因此在經(jīng)濟(jì)方面是可行的??蛻舳朔?wù)器 客戶端發(fā)送消息 , 并指定接受方 根據(jù)接受的消息轉(zhuǎn)發(fā)給客戶端發(fā)送消息 , 并指定接受方根據(jù)接受的消息轉(zhuǎn)發(fā)給客戶端圖 通信示意圖需要注意的是,客戶端同客戶端之間并沒有直接的聯(lián)系,而是通過服務(wù)器作為中轉(zhuǎn)站的形式來完成數(shù)據(jù)傳輸?shù)?。本系統(tǒng)服務(wù)器端程序需要借助于 Java 語言的多線程機(jī)制來完成。}}} 服務(wù)器處理客戶端信息線程設(shè)計(jì)當(dāng)服務(wù)器等待連接線程接收到一個(gè)新的套接字連接后,就會(huì)啟動(dòng)一個(gè)新的服務(wù)器處理客戶端信息線程來負(fù)責(zé)本服務(wù)器和該客戶端之間的連接,同時(shí)該在線程中的 run 方法中處理客戶端的請(qǐng)求。PrintStream ps = new PrintStream(())。 (username, sadress)。 while(()){ String a =(String) ()。 (leave)。 PrintStream pss = (PrintStream)(a)。if(writeToFile(na, psw)){(=true)。 (a+,)。 while(()){ String a =(String) ()。 while(()){ String a
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1