版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、評(píng)論:課程設(shè)計(jì)成績(jī)教師簽名:Javaweb程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告局域網(wǎng)內(nèi)多功能聊天室的設(shè)計(jì)與實(shí)現(xiàn)本科:計(jì)算機(jī)科學(xué)和技術(shù)學(xué)院班級(jí):二學(xué)位設(shè)計(jì)師:郭磊學(xué)位:指導(dǎo)教師:張珂設(shè)計(jì)時(shí)間: 2010年2月5日-2010年2月13日哈爾濱工業(yè)大學(xué)2010年2月哈爾濱工業(yè)大學(xué)(威海)計(jì)算機(jī)學(xué)院JAVA網(wǎng)絡(luò)編程課程設(shè)計(jì)檢查和成績(jī)?cè)u(píng)定表(項(xiàng)目組)項(xiàng)目名稱(chēng)局域網(wǎng)內(nèi)的多功能聊天室職責(zé)取得學(xué)位姓名主要分工郭磊用戶(hù)登錄、用戶(hù)列表、文本聊天、集成亨志方文件傳輸、整合設(shè)計(jì)開(kāi)始日期2010.2.5項(xiàng)目完成日期2009.2.13文件審查的成績(jī)(合計(jì)50分)審查項(xiàng)目評(píng)論內(nèi)容成績(jī)標(biāo)準(zhǔn)審查成績(jī)項(xiàng)目名稱(chēng)課題是否脫離實(shí)際,是否有創(chuàng)造性等10
2、文檔格式文檔格式是否規(guī)范,字符是否規(guī)范,圖表是否規(guī)范,術(shù)語(yǔ)是否正確等二十分文檔的質(zhì)量程序設(shè)計(jì)思想和整體框架是否清楚等。二十分整個(gè)文件的評(píng)價(jià)總成績(jī)程序功能完整性審查成績(jī)(共計(jì)50分)審查項(xiàng)目審查內(nèi)容成績(jī)標(biāo)準(zhǔn)審查成績(jī)程序的執(zhí)行情況程序是否正常工作是否發(fā)生了死鎖是否發(fā)生錯(cuò)誤而中止運(yùn)行。十分程序的正確性對(duì)于給定的輸入數(shù)據(jù),是否能得到正確的輸出結(jié)果十五分程序和文檔的完整性程序和各種文檔的內(nèi)容是否一致五分程序的代碼量程序代碼量的大小十分實(shí)現(xiàn)方法圖形界面或命令行界面,看起來(lái)很漂亮。五分實(shí)現(xiàn)語(yǔ)言面向過(guò)程或面向?qū)ο笪宸终麄€(gè)方案的評(píng)價(jià)總成績(jī)哈爾濱工業(yè)大學(xué)(威海)課程設(shè)計(jì)事務(wù)書(shū)名字:郭磊學(xué)位:院(系): 計(jì)算機(jī)科學(xué)
3、技術(shù)學(xué)院專(zhuān)家:信息安全任務(wù)開(kāi)始日期: 2009年2月5日-2009年2月13日課程設(shè)計(jì)主題:局域網(wǎng)中的多功能聊天室問(wèn)題的說(shuō)明和分析:網(wǎng)絡(luò)編程的目的是直接或間接通過(guò)網(wǎng)絡(luò)協(xié)議與另一計(jì)算機(jī)通信。 網(wǎng)絡(luò)編程有兩個(gè)主要的問(wèn)題. 一種是如何準(zhǔn)確地定位網(wǎng)絡(luò)中的一臺(tái)或多臺(tái)主機(jī),另一種是找到主機(jī)以實(shí)現(xiàn)可靠、高效的數(shù)據(jù)傳輸。 在TCP/IP協(xié)議中,IP層主要通過(guò)網(wǎng)絡(luò)主機(jī)的定位、數(shù)據(jù)傳輸?shù)穆酚?、IP地址來(lái)唯一地確定因特網(wǎng)上的主機(jī)。 另一方面,TCP層為應(yīng)用提供一種不可靠或不可靠的數(shù)據(jù)傳輸機(jī)制,該機(jī)制是網(wǎng)絡(luò)編程的主要對(duì)象,它通常不需要在意IP層如何處理數(shù)據(jù)。 現(xiàn)在流行的網(wǎng)絡(luò)編程模型是客戶(hù)端/服務(wù)器(C/S )結(jié)構(gòu)。
4、也就是說(shuō),通信雙方作為服務(wù)器等待來(lái)自客戶(hù)機(jī)的請(qǐng)求來(lái)進(jìn)行應(yīng)答。 客戶(hù)在需要服務(wù)時(shí)向服務(wù)器申請(qǐng)。 服務(wù)器通常作為守護(hù)程序運(yùn)行,監(jiān)聽(tīng)網(wǎng)絡(luò)端口,如果有客戶(hù)請(qǐng)求,則開(kāi)始響應(yīng)該客戶(hù)的服務(wù)流程,同時(shí)自己繼續(xù)監(jiān)聽(tīng)服務(wù)端口,以便以后的客戶(hù)也能立即獲得服務(wù)。網(wǎng)絡(luò)聊天是網(wǎng)絡(luò)編程的典型應(yīng)用之一,寫(xiě)網(wǎng)絡(luò)聊天軟件無(wú)疑對(duì)學(xué)習(xí)網(wǎng)絡(luò)編程有很大的幫助。 本軟件的目的是在同一LAN用戶(hù)之間提供便利的LAN服務(wù),LAN用戶(hù)能夠通過(guò)該聊天軟件在各終端相互發(fā)送聊天信息的同時(shí),迅速傳輸文件,容易地在LAN用戶(hù)之間進(jìn)行迅速高效的通信工作量:1 .整個(gè)程序的框架設(shè)計(jì)2 .用戶(hù)注冊(cè)模塊設(shè)計(jì)3 .用戶(hù)列表模塊設(shè)計(jì)4 .文本聊天模塊設(shè)計(jì)5 .文件傳
5、輸模塊設(shè)計(jì)6 .客戶(hù)端和服務(wù)器端程序的集成工作計(jì)劃的日程:2010年2月5日至6日:查看整個(gè)資料、需求分析和設(shè)計(jì)流程的框架功能和接口2010年2月7日至10日:編寫(xiě)程序代碼2010年2月11日至13日:流程集成、報(bào)告集團(tuán)的設(shè)計(jì)者和分工:亳志方:文件傳輸模塊合并工作共同完成。目錄1 .序言11.1背景11.2相關(guān)技術(shù)11.2.1 JAVA的概要11.2.2插座11.2.3 TCP回握手22 .程序設(shè)計(jì)和實(shí)現(xiàn)22.1需求分析22.2程序配置32.2.1多用戶(hù)在線(xiàn)方案32.2.2軟件框架32.3代碼實(shí)現(xiàn)32.3.1用戶(hù)登錄模塊32.3.2用戶(hù)列表模塊52.3.3文本聊天模塊72.3.4文件傳輸模塊1
6、03 .測(cè)試結(jié)果103.1測(cè)試環(huán)境和使用方法103.2功能測(cè)試103.2.1用戶(hù)登錄和用戶(hù)列表103.2.2文本聊天群體聊天私話(huà)字體設(shè)置133.2.3文件傳輸144 .總結(jié)15參考文獻(xiàn)161 .序言1.1背景在網(wǎng)絡(luò)不斷發(fā)展的今天,對(duì)網(wǎng)絡(luò)的依賴(lài)越來(lái)越多,各種網(wǎng)絡(luò)應(yīng)用程序不斷出現(xiàn),網(wǎng)絡(luò)編程受到越來(lái)越多的程序員的重視。網(wǎng)絡(luò)編程的目的是直接或間接通過(guò)網(wǎng)絡(luò)協(xié)議與另一計(jì)算機(jī)通信。 網(wǎng)絡(luò)編程有兩個(gè)主要的問(wèn)題. 一種是如何準(zhǔn)確地定位網(wǎng)絡(luò)中的一臺(tái)或多臺(tái)主機(jī),另一種是找到主機(jī)以實(shí)現(xiàn)可靠、高效的數(shù)據(jù)傳輸。 在TCP/IP協(xié)議中,IP層主要通過(guò)網(wǎng)絡(luò)主機(jī)的定位、數(shù)據(jù)
7、傳輸?shù)穆酚伞P地址來(lái)唯一地確定因特網(wǎng)上的主機(jī)。 另一方面,TCP層為應(yīng)用提供一種不可靠或不可靠的數(shù)據(jù)傳輸機(jī)制,該機(jī)制是網(wǎng)絡(luò)編程的主要對(duì)象,它通常不需要在意IP層如何處理數(shù)據(jù)。 現(xiàn)在流行的網(wǎng)絡(luò)編程模型是客戶(hù)端/服務(wù)器(C/S )結(jié)構(gòu)。 也就是說(shuō),通信雙方作為服務(wù)器等待來(lái)自客戶(hù)機(jī)的請(qǐng)求來(lái)進(jìn)行應(yīng)答。 客戶(hù)在需要服務(wù)時(shí)向服務(wù)器申請(qǐng)。 服務(wù)器通常作為守護(hù)進(jìn)程運(yùn)行,監(jiān)聽(tīng)網(wǎng)絡(luò)端口,如果有客戶(hù)請(qǐng)求,則開(kāi)始響應(yīng)該客戶(hù)的服務(wù)流程,同時(shí)自己繼續(xù)監(jiān)聽(tīng)服務(wù)端口,以使后續(xù)的客戶(hù)也能立即獲得服務(wù)。網(wǎng)絡(luò)聊天是網(wǎng)絡(luò)編程的典型應(yīng)用之一,寫(xiě)網(wǎng)絡(luò)聊天軟件無(wú)疑對(duì)學(xué)習(xí)網(wǎng)絡(luò)編程有很大的幫助。 本團(tuán)隊(duì)的目的是編制本軟件,通過(guò)軟件的制作和實(shí)
8、現(xiàn),提高對(duì)網(wǎng)絡(luò)編程的理解和掌握。1.2相關(guān)技術(shù)1.2.1 JAVA的概要JAVA語(yǔ)言具有簡(jiǎn)單、面向?qū)ο?、分布式、解釋?zhí)行、穩(wěn)健、安全、體系結(jié)構(gòu)中立、可移植、高性能、多線(xiàn)程、動(dòng)態(tài)等特征。豐富的類(lèi)庫(kù)JAVA提供了許多類(lèi),以滿(mǎn)足網(wǎng)絡(luò)、多線(xiàn)程和面向?qū)ο笙到y(tǒng)的需要。 語(yǔ)言包提供的支持可以通過(guò)字符串處理、多線(xiàn)程處理、數(shù)學(xué)函數(shù)處理等,簡(jiǎn)單地實(shí)現(xiàn)JAVA程序的執(zhí)行平臺(tái)。 實(shí)用程序包支持散列表、堆棧、可變數(shù)組、時(shí)間、日期等。 輸入輸出數(shù)據(jù)包是統(tǒng)一的“流”模式,實(shí)現(xiàn)所有形式的I/O,文件系統(tǒng)、網(wǎng)絡(luò)、輸入子網(wǎng)數(shù)據(jù)包實(shí)現(xiàn)套接字編程。 抽象圖形用戶(hù)界面包實(shí)現(xiàn)了不同平臺(tái)計(jì)算機(jī)上的圖形用戶(hù)界面組件(窗口、菜單、滾動(dòng)條、對(duì)話(huà)
9、框等),并在不同平臺(tái)上實(shí)現(xiàn)了JAVA . 網(wǎng)絡(luò)數(shù)據(jù)包支持互聯(lián)網(wǎng)的TCP/IP協(xié)議,并提供與互聯(lián)網(wǎng)的接口。 支持URL連接、即時(shí)訪(fǎng)問(wèn)WWW、簡(jiǎn)化用戶(hù)/服務(wù)器模型的編程。JAVA和c、c在變量宣言、參數(shù)傳遞、操作員、流控制等方面使用相同的傳統(tǒng),使熟悉c、c的程序員能輕松編程。 同時(shí),JAVA為了實(shí)現(xiàn)其簡(jiǎn)單、穩(wěn)健、安全等特性,排除了c和c的許多不合理內(nèi)容。1.2.2插座套接字是用于實(shí)現(xiàn)網(wǎng)絡(luò)上客戶(hù)端和服務(wù)器之間的連接的套接字. 也就是說(shuō),在網(wǎng)絡(luò)上的兩個(gè)或更多個(gè)雙工通信的過(guò)程之間總是有一個(gè)連接,并且該連接的端點(diǎn)成為插口,并且所述插口以相對(duì)低的級(jí)別被通信。具體地說(shuō),服務(wù)器應(yīng)用通常等待客戶(hù)端的連接請(qǐng)求。 當(dāng)
10、連接請(qǐng)求到達(dá)時(shí),客戶(hù)端的和服兵器側(cè)已建立通信連接,并且在連接過(guò)程中,客戶(hù)端被分配有本地端口以與套接字建立連接,并且客戶(hù)端通過(guò)寫(xiě)套接字通知服務(wù)器并讀取套接字的信息。 類(lèi)似的服務(wù)器也可以獲取本地端口,并且需要新端口號(hào)來(lái)監(jiān)聽(tīng)原始端口上的其他連接請(qǐng)求。 服務(wù)器通過(guò)本地端口連接到套接字,并通過(guò)讀寫(xiě)和客戶(hù)端進(jìn)行通信。插座程序的作業(yè)步驟:1 .建立套接字連接:通信開(kāi)始前由通信雙方確認(rèn)身份,建立專(zhuān)用的虛擬連接信道。2 .數(shù)據(jù)通信:通過(guò)虛擬連接信道傳輸和通信數(shù)據(jù)信息。3 .關(guān)閉:通信結(jié)束后,斷開(kāi)已構(gòu)建的虛擬連接。1.2.3 TCP次握手初次握手:原始主機(jī)發(fā)送數(shù)據(jù)幀,請(qǐng)求此次連接的序列號(hào)。第二次握手:如果目標(biāo)主機(jī)
11、接收到請(qǐng)求后同意連接,則返回帶有此連接號(hào)碼和源計(jì)算機(jī)連接號(hào)碼的確認(rèn)。第三,在接收到包括初始序列號(hào)的響應(yīng)后,源機(jī)器向目的地主機(jī)發(fā)送兩次連接的序列號(hào)的確認(rèn)。具體的步驟如下:2 .程序設(shè)計(jì)和實(shí)現(xiàn)2.1需求分析作為L(zhǎng)AN內(nèi)的即時(shí)聊天程序,除了基本的聊天功能外,還是經(jīng)常使用文件傳送的功能。 這個(gè)軟件需要以下的功能。1 .用戶(hù)登錄安裝實(shí)現(xiàn)多用戶(hù)即時(shí)消息的服務(wù)器的用戶(hù)在登錄的同時(shí),為了便于每個(gè)用戶(hù)以前的識(shí)別,必須輸入個(gè)人化信息。2 .文本聊天聊天室的功能,所謂的分組聊天,聊天內(nèi)容的所有人都可以看到的秘密聊天功能,所謂的私話(huà),聊天內(nèi)容只能在聊天雙方看到的用戶(hù)可以設(shè)定字體。3 .文件傳輸多線(xiàn)程、發(fā)送接收可以同時(shí)
12、進(jìn)行。2.2程序結(jié)構(gòu)2.2.1多用戶(hù)在線(xiàn)程序采用客戶(hù)端/服務(wù)器(C/S )結(jié)構(gòu)。 也就是說(shuō),通信雙方作為服務(wù)器等待來(lái)自客戶(hù)機(jī)的請(qǐng)求來(lái)進(jìn)行應(yīng)答。 客戶(hù)在需要服務(wù)時(shí)向服務(wù)器申請(qǐng)。 服務(wù)器通常作為守護(hù)程序運(yùn)行,監(jiān)聽(tīng)網(wǎng)絡(luò)端口,如果有客戶(hù)請(qǐng)求,則開(kāi)始響應(yīng)該客戶(hù)的服務(wù)流程,同時(shí)自己繼續(xù)監(jiān)聽(tīng)服務(wù)端口,以便以后的客戶(hù)也能馬上獲得服務(wù)。2.2.2軟件框架tcp插座客戶(hù)端(客戶(hù)端)公共跟蹤系統(tǒng)(Public Talking )網(wǎng)絡(luò)服務(wù)器私下跟蹤.Files Trans用戶(hù)列表。連接/logonUsers2.3代碼實(shí)現(xiàn)開(kāi)發(fā)環(huán)境: windowsxpprofessionalsp3JDK1.6.0_ 18 netbea
13、n side 用戶(hù)登錄模塊僅列出程序接口和服務(wù)器端之間通信部分的代碼客戶(hù)端:classconnectextendsjframeimplementsactionlistener,ItemListener,KeyListener舉止公共void link () throws exception連接到服務(wù)器。hostname=host text.gettext ().trim ();port=integer.parse eint (port text.gettext () );創(chuàng)建client=new socket (主機(jī)名稱(chēng),端口)/流套接字,并連接到指定IP地址的指定端口號(hào)。in
14、=newbuffereddreader (newinputstreamreader (client.get inputstream () ) );out=new printwriter (client.get output stream () );out.println (name text.gettext () sex;out.flush ();以下“你我我你我”服務(wù)器端:publicaticationstaticvoiddaddconnection (套接字,客戶(hù)端proc CP )舉止if (連接=null )舉止連接=new vector ();以下connections.addElement(s )if (clients=null )舉止clients=new Vector ();以下clients.addElement(cp )以下publicaticationvoiddeleteconnection (套接字,客戶(hù)端proc CP )throws IOException舉止PS (連接)!=null )舉止連接. remove element (s )s.close ();以下PS (客戶(hù)端!=null )舉止客戶(hù)端.移除元件(CP )以下以下公共靜態(tài)向量獲取客戶(hù)端(),),)舉止返回客戶(hù)端;以下2
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職作物生產(chǎn)(應(yīng)用技巧實(shí)操)試題及答案
- 2025年高職(樂(lè)器維修)琵琶修復(fù)技術(shù)綜合測(cè)試題及答案
- 2025年中職(醫(yī)用電子儀器應(yīng)用與維護(hù))心電圖機(jī)操作專(zhuān)項(xiàng)測(cè)試試題及答案
- 2025年中職新聞采編與制作(新聞采編制作應(yīng)用)試題及答案
- 2025年大學(xué)中國(guó)語(yǔ)言文學(xué)(外國(guó)文學(xué))試題及答案
- 2025年中職航海技術(shù)(航海氣象認(rèn)知)試題及答案
- 養(yǎng)老院老人生活設(shè)施維修人員晉升制度
- 養(yǎng)老院老人心理咨詢(xún)師行為規(guī)范制度
- 養(yǎng)老院護(hù)理服務(wù)標(biāo)準(zhǔn)制度
- 養(yǎng)老院入住老人生活照料制度
- 電商平臺(tái)消費(fèi)者權(quán)益保護(hù)政策
- 年度采購(gòu)合同框架協(xié)議
- 14J936變形縫建筑構(gòu)造
- TD/T 1012-2016 土地整治項(xiàng)目規(guī)劃設(shè)計(jì)規(guī)范(正式版)
- 《繼電保護(hù)智能運(yùn)維檢修 第5部分:在線(xiàn)監(jiān)測(cè)站端信息描述》
- 動(dòng)物園市場(chǎng)競(jìng)爭(zhēng)中的差異化策略
- 氣錘計(jì)算方法
- 人力資源服務(wù)機(jī)構(gòu)管理制度
- 聯(lián)合利華中國(guó)公司銷(xiāo)售運(yùn)作手冊(cè)
- 電氣二次設(shè)備定期工作標(biāo)準(zhǔn)
- 銀行開(kāi)戶(hù)單位工作證明模板
評(píng)論
0/150
提交評(píng)論