基于java socket的聊天室項(xiàng)目文檔

上傳人:仙*** 文檔編號(hào):27781857 上傳時(shí)間:2021-08-20 格式:DOC 頁(yè)數(shù):36 大?。?23.01KB
收藏 版權(quán)申訴 舉報(bào) 下載
基于java socket的聊天室項(xiàng)目文檔_第1頁(yè)
第1頁(yè) / 共36頁(yè)
基于java socket的聊天室項(xiàng)目文檔_第2頁(yè)
第2頁(yè) / 共36頁(yè)
基于java socket的聊天室項(xiàng)目文檔_第3頁(yè)
第3頁(yè) / 共36頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《基于java socket的聊天室項(xiàng)目文檔》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于java socket的聊天室項(xiàng)目文檔(36頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 北京郵電大學(xué)軟件學(xué)院 2010-2011 學(xué)年第 1學(xué)期實(shí)訓(xùn)項(xiàng)目文檔 (每個(gè)項(xiàng)目小組一份) 課程名稱: 全日制研究生實(shí)訓(xùn) 項(xiàng)目名稱: 通信軟件實(shí)訓(xùn) 項(xiàng)目完成人: 姓名: 學(xué)號(hào): 姓名: 學(xué)號(hào): 姓名: 學(xué)號(hào): 姓名: 學(xué)號(hào): 姓名: 學(xué)號(hào): 姓名: 學(xué)號(hào): 指導(dǎo)教師: 日 期:2011年1月21日 l 基于java socket的聊天室實(shí)現(xiàn) 一 . 實(shí)訓(xùn)項(xiàng)目目的和要

2、求(說(shuō)明通過(guò)本項(xiàng)目希望達(dá)到的目的和要求) 目的:熟練掌握socket編程原理,并用java socket實(shí)現(xiàn)聊天室 要求:實(shí)現(xiàn)p2p和聊天室功能 二 . 實(shí)訓(xùn)項(xiàng)目開(kāi)發(fā)環(huán)境(說(shuō)明本項(xiàng)目需要的環(huán)境) 開(kāi)發(fā)工具:Eclipse SDK Version: 3.5.2 和 NetBeans 6.9.1 版本 系統(tǒng):win7 三 . 實(shí)訓(xùn)項(xiàng)目?jī)?nèi)容(說(shuō)明本項(xiàng)目的內(nèi)容,如:?jiǎn)栴}分析、設(shè)計(jì)方案、算法、設(shè)計(jì)圖等) 1.問(wèn)題分析 網(wǎng)絡(luò)編程中兩個(gè)主要的問(wèn)題一個(gè)是如何準(zhǔn)確的定位網(wǎng)絡(luò)上一臺(tái)或多臺(tái)主機(jī),另一個(gè)就是找到主機(jī)后如何可靠高效的進(jìn)行數(shù)據(jù)傳輸。在TCP/IP協(xié)議中IP層主要負(fù)責(zé)網(wǎng)絡(luò)主

3、機(jī)的定位,數(shù)據(jù)傳輸?shù)穆酚桑蒊P地址可以唯一地確定Internet上的一臺(tái)主機(jī)。而TCP層則提供面向應(yīng)用的可靠(tcp)的或非可靠(UDP)的數(shù)據(jù)傳輸機(jī)制,這是網(wǎng)絡(luò)編程的主要對(duì)象,一般不需要關(guān)心IP層是如何處理數(shù)據(jù)的。目前較為流行的網(wǎng)絡(luò)編程模型是客戶機(jī)/服務(wù)器(C/S)結(jié)構(gòu)。即通信雙方一方作為服務(wù)器等待客戶提出請(qǐng)求并予以響應(yīng)??蛻魟t在需要服務(wù)時(shí)向服務(wù)器提 出申請(qǐng)。服務(wù)器一般作為守護(hù)進(jìn)程始終運(yùn)行,監(jiān)聽(tīng)網(wǎng)絡(luò)端口,一旦有客戶請(qǐng)求,就會(huì)啟動(dòng)一個(gè)服務(wù)進(jìn)程來(lái)響應(yīng)該客戶,同時(shí)自己繼續(xù)監(jiān)聽(tīng)服務(wù)端口,使后來(lái)的客戶也 能及時(shí)得到服務(wù)。 兩類傳輸協(xié)議:TCP;UDP。TCP是Tranfer Control Pro

4、tocol的 簡(jiǎn)稱,是一種面向連接的保證可靠傳輸?shù)膮f(xié)議。通過(guò)TCP協(xié)議傳輸,得到的是一個(gè)順序的無(wú)差錯(cuò)的數(shù)據(jù)流。發(fā)送方和接收方的成對(duì)的兩個(gè)socket之間必須建 立連接,以便在TCP協(xié)議的基礎(chǔ)上進(jìn)行通信,當(dāng)一個(gè)socket(通常都是server socket)等待建立連接時(shí),另一個(gè)socket可以要求進(jìn)行連接,一旦這兩個(gè)socket連接起來(lái),它們就可以進(jìn)行雙向數(shù)據(jù)傳輸,雙方都可以進(jìn)行發(fā)送 或接收操作。 兩類傳輸協(xié)議:TCP;UDP。TCP是Tranfer Control Protocol的 簡(jiǎn)稱,是一種面向連接的保證可靠傳輸?shù)膮f(xié)議。通過(guò)TCP協(xié)議傳輸,得到的是一個(gè)順序的無(wú)差錯(cuò)的數(shù)據(jù)流。發(fā)送方和

5、接收方的成對(duì)的兩個(gè)socket之間必須建 立連接,以便在TCP協(xié)議的基礎(chǔ)上進(jìn)行通信,當(dāng)一個(gè)socket(通常都是server socket)等待建立連接時(shí),另一個(gè)socket可以要求進(jìn)行連接,一旦這兩個(gè)socket連接起來(lái),它們就可以進(jìn)行雙向數(shù)據(jù)傳輸,雙方都可以進(jìn)行發(fā)送 或接收操作。 UDP是User Datagram Protocol的簡(jiǎn)稱,是一種無(wú)連接的協(xié)議,每個(gè)數(shù)據(jù)報(bào)都是一個(gè)獨(dú)立的信息,包括完整的源地址或目的地址,它在網(wǎng)絡(luò)上以任何可能的路徑傳往目的地,因此能否到達(dá)目的地,到達(dá)目的地的時(shí)間以及內(nèi)容的正確性都是不能被保證的。 比較: UDP:1,每個(gè)數(shù)據(jù)報(bào)中都給出了完整的地址信息,因此

6、無(wú)需要建立發(fā)送方和接收方的連接。 2,UDP傳輸數(shù)據(jù)時(shí)是有大小限制的,每個(gè)被傳輸?shù)臄?shù)據(jù)報(bào)必須限定在64KB之內(nèi)。 3,UDP是一個(gè)不可靠的協(xié)議,發(fā)送方所發(fā)送的數(shù)據(jù)報(bào)并不一定以相同的次序到達(dá)接收方 TCP:1,面向連接的協(xié)議,在socket之間進(jìn)行數(shù)據(jù)傳輸之前必然要建立連接,所以在TCP中需要連接 時(shí)間。 2,TCP傳輸數(shù)據(jù)大小限制,一旦連接建立起來(lái),雙方的socket就可以按統(tǒng)一的格式傳輸大的數(shù)據(jù)。 3,TCP是一個(gè)可靠的協(xié)議,它確保接收方完全正確地獲取發(fā)送方所發(fā)送的全部數(shù)據(jù)。 應(yīng)用: 1,TCP在網(wǎng)絡(luò)通信上有極強(qiáng)的生命力,例如遠(yuǎn)程連接(Telnet)和文件傳輸(FTP)都

7、需要不定長(zhǎng)度的數(shù)據(jù)被可靠地傳輸。但是可靠的傳輸是要付出代價(jià)的,對(duì)數(shù)據(jù)內(nèi)容正確性的檢驗(yàn)必然占用計(jì)算機(jī)的處理時(shí)間和網(wǎng)絡(luò)的帶寬,因此TCP傳輸?shù)男什蝗鏤DP高。 2,UDP操作簡(jiǎn)單,而且僅需要較少的監(jiān)護(hù),因此通常用于局域網(wǎng)高可靠性的分散系統(tǒng)中client/server應(yīng)用程序。例如視頻會(huì)議系統(tǒng),并不要求音頻視頻數(shù)據(jù)絕對(duì)的正確,只要保證連貫性就可以了,這種情況下顯然使用UDP會(huì)更合理一些。 2.設(shè)計(jì)方案 基于Socket的java網(wǎng)絡(luò)編程。網(wǎng)絡(luò)上的兩個(gè)程序通過(guò)一個(gè)雙向的通訊連接實(shí)現(xiàn)數(shù)據(jù)的交換,這個(gè)雙向鏈路的一端稱為一個(gè)Socket。Socket通常用來(lái)實(shí)現(xiàn)客戶方和服務(wù)方的連接。Sock

8、et是TCP/IP協(xié)議的一個(gè)十分流行的編程界面,一個(gè)Socket由一個(gè)IP地址和一個(gè)端口號(hào)唯一確定。 但是,Socket所支持的協(xié)議種類也不光TCP/IP一種,因此兩者之間是沒(méi)有必然聯(lián)系的。在Java環(huán)境下,Socket編程主要是指基于TCP/IP協(xié)議的網(wǎng)絡(luò)編程。 Socket通訊的過(guò)程。Server端Listen(監(jiān)聽(tīng))某個(gè)端口是否有連接請(qǐng)求,Client端向Server 端發(fā)出Connect(連接)請(qǐng)求,Server端向Client端發(fā)回Accept(接受)消息。一個(gè)連接就建立起來(lái)了。Server端和Client 端都可以通過(guò)send,recv等方法與對(duì)方通信。 3.設(shè)計(jì)圖

9、 圖1:聊天室用例圖 用例說(shuō)明文本: 1、 用戶登錄用例:客戶端運(yùn)行,用戶可以用用戶名和端口號(hào)登陸到服務(wù)器。 2、 服務(wù)器注冊(cè)用例:服務(wù)器根據(jù)用戶輸入的用戶名和端口號(hào)和sip地址記錄用戶信息并把信息廣播給所有的在線用戶。 3、 客戶端發(fā)送消息用例:客戶端縣服務(wù)器帶有關(guān)鍵字(群聊/私聊/登錄/退出)的消息到服務(wù)器。 4、 服務(wù)器轉(zhuǎn)發(fā)消息用例:服務(wù)器解析收到的消息,提取目的端sip地址,并把消息轉(zhuǎn)發(fā)到目的端。 5、 客戶端退出用例:客戶端向服務(wù)器發(fā)送log on消息。服務(wù)器把該客戶信息從用戶列表中刪除,并更新在線列表。 圖2聊天室領(lǐng)域模型 圖3登錄順序圖 圖4聊天順序

10、圖 四 . 實(shí)訓(xùn)項(xiàng)目結(jié)果及分析 項(xiàng)目分析: 客戶端實(shí)現(xiàn): 以服務(wù)方主機(jī)地址和端口號(hào)為參數(shù)調(diào)用 Socket 類的構(gòu)造函數(shù)去創(chuàng)建一個(gè) Socket 對(duì)象. 創(chuàng)建過(guò)程包含了向服務(wù)方請(qǐng)求建立通訊連接。使用 Socket 對(duì)象的 getInputStream() 和 getOutputStream() 方法創(chuàng)建用于網(wǎng)絡(luò)傳輸?shù)妮斎?輸出流。使用所得的網(wǎng)絡(luò)流對(duì)象讀寫(xiě)數(shù)據(jù),網(wǎng)絡(luò)流對(duì)象將讀寫(xiě)轉(zhuǎn)換成對(duì) Socket 數(shù)據(jù)的接收和發(fā)送。工作完畢, 關(guān)閉網(wǎng)絡(luò)流對(duì)象 服務(wù)器實(shí)現(xiàn):以某端口號(hào)為參數(shù)調(diào)用 ServerSocket 類的構(gòu)造函數(shù)去創(chuàng)建一個(gè) ServerSocket 對(duì)象,作為服務(wù)器的Sock

11、et。調(diào)用被創(chuàng)建的 ServerSocket 對(duì)象的 accept() 方法在指定端口監(jiān)聽(tīng)客戶方的連接請(qǐng)求。收到客戶請(qǐng)求后,accept() 方法返回一個(gè)新建的 Socket 對(duì)象, 該對(duì)象代表和客戶方建立起來(lái)的通訊連接在服務(wù)方的通訊端點(diǎn)。使用 Socket 對(duì)象的 getInputStream() 和 getOutputStream() 方法創(chuàng)建用于網(wǎng)絡(luò)傳輸?shù)妮斎?輸出流。使用所得的網(wǎng)絡(luò)流對(duì)象讀寫(xiě)數(shù)據(jù),網(wǎng)絡(luò)流對(duì)象將讀寫(xiě)轉(zhuǎn)換成對(duì) Socket 的數(shù)據(jù)的接收和發(fā)送。工作完畢, 關(guān)閉網(wǎng)絡(luò)流對(duì)象 項(xiàng)目實(shí)現(xiàn): 五 . 實(shí)訓(xùn)項(xiàng)目人員、進(jìn)度安排及完成過(guò)程 小組一共六個(gè)人,在這一星期的實(shí)訓(xùn)中,

12、每個(gè)人都認(rèn)真學(xué)習(xí)了java socket的內(nèi)容,并在此基礎(chǔ)上進(jìn)一步完成聊天室功能實(shí)現(xiàn)。由于基礎(chǔ)不同,我小組分工及人員完成情況如下: 小組組長(zhǎng):在這個(gè)項(xiàng)目里主要負(fù)責(zé)協(xié)調(diào)各個(gè)組員之間的協(xié)作,進(jìn)行項(xiàng)目分工,畫(huà)用例模型,總結(jié)整理組員的工作。 技術(shù)經(jīng)理:主要負(fù)責(zé)java socket的研究并回答小組其他成員的疑問(wèn),在聊天室的設(shè)計(jì)過(guò)程中,對(duì)一些功能實(shí)現(xiàn)提出了建設(shè)性的意見(jiàn)。 技術(shù)人員:主要負(fù)責(zé)幾個(gè)聊天室程序的分析與設(shè)計(jì),設(shè)計(jì)文檔的撰寫(xiě),聊天室程序編寫(xiě)的大部分工作。 測(cè)試人員:負(fù)責(zé)聊天室程序的測(cè)試工作,需求文檔的撰寫(xiě),負(fù)責(zé)文檔的整理,資料的搜集以及小組PPT的制作。 六 . 實(shí)訓(xùn)項(xiàng)目心得及體會(huì) 心

13、得體會(huì): 理解了socket工作流程和實(shí)現(xiàn)方法,熟練掌握socket編程,實(shí)現(xiàn)了簡(jiǎn)單的聊天室功能,對(duì)多線程有了更進(jìn)一步的理解。通過(guò)老師對(duì)SIP協(xié)議的講解,使我對(duì)SIP協(xié)議有了一個(gè)初步的認(rèn)識(shí),使我明白了SIP(Session Initiation Protocol)是一個(gè)應(yīng)用層的信令控制協(xié)議。用于創(chuàng)建、修改和釋放一個(gè)或多個(gè)參與者的會(huì)話。這些會(huì)話可以好似Internet多媒體會(huì)議、IP電話或多媒體分發(fā)。會(huì)話的參與者可以通過(guò)組播(multicast)、網(wǎng)狀單播(unicast)或兩者的混合體進(jìn)行通信。在學(xué)習(xí)網(wǎng)絡(luò)傳輸?shù)倪^(guò)程中,對(duì)兩種網(wǎng)絡(luò)傳輸協(xié)議有了更進(jìn)一步的理解和深刻的體會(huì)。 七 . 附錄(附上實(shí)

14、訓(xùn)項(xiàng)目其他文檔,具體內(nèi)容根據(jù)項(xiàng)目要求確定) 1. 需求分析文檔錯(cuò)誤!未找到索引項(xiàng)。 2. 設(shè)計(jì)文檔 3. 項(xiàng)目PPT 4. 源程序 l Linux操作系統(tǒng)下基于c語(yǔ)言的 socket聊天室實(shí)現(xiàn) 一 . 實(shí)訓(xùn)項(xiàng)目目的和要求(說(shuō)明通過(guò)本項(xiàng)目希望達(dá)到的目的和要求) 基于Linux系統(tǒng)下的socket編程——P2P聊天系統(tǒng) 1.掌握Linux環(huán)境下socket編程的基本過(guò)程; 2.熟練掌握C語(yǔ)言編程方法; 3.了解GCC編譯器的編譯過(guò)程,并能在Linux系統(tǒng)下熟練使用。 二 . 實(shí)訓(xùn)項(xiàng)目開(kāi)發(fā)環(huán)境(說(shuō)明本項(xiàng)目需要的環(huán)境) 系統(tǒng)環(huán)境:Linux系統(tǒng) 編譯環(huán)境:GCC編譯器 三

15、. 實(shí)訓(xùn)項(xiàng)目?jī)?nèi)容(說(shuō)明本項(xiàng)目的內(nèi)容,如:?jiǎn)栴}分析、設(shè)計(jì)方案、算法、設(shè)計(jì)圖等) 問(wèn)題分析:如何通過(guò)socket實(shí)現(xiàn)Linux環(huán)境下的點(diǎn)對(duì)點(diǎn)通信。 設(shè)計(jì)方案: 1. 目的:在Linux系統(tǒng)中實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信 2. 要求:使用socket、C語(yǔ)言編程 3. 步驟:(1)根據(jù)socket通信機(jī)制,編寫(xiě)C源程序; (2)對(duì)源程序進(jìn)行反復(fù)測(cè)試、修改; (3)實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信功能。 設(shè)計(jì)圖: 四 . 實(shí)訓(xùn)項(xiàng)目結(jié)果及分析 P2P網(wǎng)絡(luò)聊天系統(tǒng)的測(cè)試結(jié)果如下: 結(jié)果分析: 該測(cè)試是在一臺(tái)計(jì)算機(jī)上進(jìn)行的,若要實(shí)現(xiàn)兩臺(tái)計(jì)算機(jī)間的點(diǎn)

16、對(duì)點(diǎn)通信,只需修改相應(yīng)的IP地址和端口號(hào)即可。 如圖所示,該系統(tǒng)實(shí)現(xiàn)了P2P通信,即通信雙方之間可以相互發(fā)送和接收消息,達(dá)到了預(yù)期目的,滿足了用戶需求。 五 . 實(shí)訓(xùn)項(xiàng)目人員、進(jìn)度安排及完成過(guò)程 小組一共六個(gè)人,在這一星期的實(shí)訓(xùn)中,每個(gè)人都認(rèn)真學(xué)習(xí)了linux操作系統(tǒng)環(huán)境下的C socket的內(nèi)容,及GCC的編譯環(huán)境,并在此基礎(chǔ)上進(jìn)一步完成聊天室功能實(shí)現(xiàn)。具體的分工如下: 負(fù)責(zé)UDP通訊協(xié)議下聊天室的程序編寫(xiě)。 負(fù)責(zé)TCP通訊寫(xiě)一下的聊天室的程序編寫(xiě)。 同學(xué),主要負(fù)責(zé)編寫(xiě)需求分析,繪制領(lǐng)域模型等工作。 六 . 實(shí)訓(xùn)項(xiàng)目心得及體會(huì) Linux環(huán)境對(duì)于我們都是一個(gè)陌生的環(huán)境,

17、通過(guò)這個(gè)項(xiàng)目的聯(lián)系,收獲的不僅是C Socket的通信編程。更大的收獲是對(duì)linux環(huán)境的學(xué)習(xí),了解了linux的文件構(gòu)成。 七 . 附錄(附上實(shí)訓(xùn)項(xiàng)目其他文檔,具體內(nèi)容根據(jù)項(xiàng)目要求確定 部分核心代碼 if(fork()==0) { char msg[256]; while(strcmp(msg,"@") != 0) { printf("enter input message\n"); scanf("%s",msg); sendto(sockffdd, msg, sizeof(msg), 0, (struct sockaddr *)&server1,

18、 sizeof(struct sockaddr)); printf("send successful\n"); usleep(100000); } close(sockffdd); } ///////////////////////////////////////////////// char buf[4096]; int resize, the_len; the_len = sizeof(struct sockaddr); while(true){ printf("ok"); resize = recvfrom(soc

19、kfd, buf, sizeof(buf), 0, (struct sockaddr *)&their, &the_len); printf("receive message is:%s", buf); printf("\t\t%s\n", inet_ntoa(their.sin_addr)); } l 基于JAIN-SIP聊天室的開(kāi)發(fā) 一 . 實(shí)訓(xùn)項(xiàng)目目的和要求(說(shuō)明通過(guò)本項(xiàng)目希望達(dá)到的目的和要求) l 熟悉JAIN-SIP協(xié)議規(guī)定的通信工程; l 完成一個(gè)有GUI界面的聊天室,最基本要實(shí)現(xiàn)公聊和私聊內(nèi)容; 二 . 實(shí)訓(xùn)項(xiàng)

20、目開(kāi)發(fā)環(huán)境(說(shuō)明本項(xiàng)目需要的環(huán)境) 開(kāi)發(fā)工具:Eclipse 3.2版本 和 NetBeans 6.9.1 版本 系統(tǒng)要求:裝有Java 虛擬機(jī)的 Windows XP 及高版本 、Linux等其他系統(tǒng) 接口/協(xié)議約束:必須使用JAIN-SIP協(xié)議棧,支持IPv4接口 用戶界面的約束:用戶界面要求操作系統(tǒng)能支持Java 虛擬機(jī),并有GUI桌面。 軟件質(zhì)量的約束:正確實(shí)現(xiàn)了網(wǎng)上聊天室的群聊、私聊、顯示在線列表,新建聊天室功能,選擇進(jìn)入聊天室。服務(wù)器端通過(guò)JAIN-SIP封裝的類使用多線程分別處理監(jiān)聽(tīng),發(fā)送功能。但本軟件的主要實(shí)現(xiàn)通信的只有一個(gè)類,略有龐大,并且與多個(gè)界面有聯(lián)系,之間互相

21、有操作、調(diào)用關(guān)系,故程序的耦合度比較大。 三 . 實(shí)訓(xùn)項(xiàng)目?jī)?nèi)容(說(shuō)明本項(xiàng)目的內(nèi)容,如:?jiǎn)栴}分析、設(shè)計(jì)方案、算法、設(shè)計(jì)圖等) 3.1本系統(tǒng)介紹: 本聊天室系統(tǒng)適用于大多數(shù)用戶,對(duì)用戶操作能力的要求低。同時(shí),該系統(tǒng)的界面簡(jiǎn)潔,系統(tǒng)資源占用少,運(yùn)行速度快,對(duì)于小型局域網(wǎng)內(nèi)的用戶可以起到很好的交流作用。所謂聊天室就是一個(gè)可以讓許多用戶同時(shí)相互通信的網(wǎng)上園地,個(gè)人用戶可以通過(guò)網(wǎng)上聊天室將自未自己獲取更多的知識(shí)和更多的閱歷。 本聊天室主要用登錄界面、聊天室界面、私聊界面、創(chuàng)建聊天室界面等構(gòu)成,這個(gè)設(shè)計(jì)簡(jiǎn)潔明了,實(shí)用,使用簡(jiǎn)單。 系統(tǒng)的總體框架圖如圖2所示: 聊天室系統(tǒng) 服務(wù)器 客戶端

22、 監(jiān) 聽(tīng) 請(qǐng) 求 用 戶 退 出 顯示登錄情況 用 戶 登 錄 轉(zhuǎn) 發(fā) 請(qǐng) 求 私 聊 創(chuàng)建聊天室 群 聊 本系統(tǒng)的主要功能: (1) 聊天室系統(tǒng)界面由登錄界面,聊天窗口,私聊窗口組成,聊天窗口分為聊天室名稱,在線人數(shù),消息發(fā)送區(qū),消息顯示區(qū)。 (2) 用戶首先在登錄界面輸入昵稱,點(diǎn)擊登錄按鈕登錄系統(tǒng)??蛻舳穗S即與服務(wù)端進(jìn)行三次握手,收到“ok”回應(yīng)后打開(kāi)群聊窗口。 (3) 用戶可以在群聊窗口的點(diǎn)擊用戶在聊天室中的在線用戶列表中可以雙擊某個(gè)用戶,隨后彈出私聊窗口,進(jìn)行對(duì)被點(diǎn)擊用戶之間的私聊。 (4) 用戶可以創(chuàng)建新的聊天室,其他用戶

23、可以進(jìn)入到新建的聊天室里。 (5) 用戶在聊天窗口可以發(fā)送消息,服務(wù)器收到消息后廣播給所有登錄用戶。并且在消息顯示區(qū)顯示消息發(fā)送方的昵稱。 (6) 服務(wù)器端可以記載所有用戶的聊天的信息,包括私聊信息。并能通過(guò)打開(kāi)一個(gè)在線用戶列表用戶。可以實(shí)時(shí)看到用戶列表。 (7) 聊天室系統(tǒng)界面由登錄界面,聊天窗口,私聊窗口組成,聊天窗口分為聊天室名稱,在線人數(shù),在線用戶列表區(qū),聊天室創(chuàng)建/選擇,消息發(fā)送區(qū),消息顯示區(qū)。 (8) 用戶首先在登錄界面輸入昵稱,點(diǎn)擊登錄按鈕登錄系統(tǒng)??蛻舳穗S即與服務(wù)端進(jìn)行三次握手,收到“ok”回應(yīng)后打開(kāi)聊天窗口。 (9) 用戶可以在聊天窗口的點(diǎn)擊聊天室標(biāo)簽,進(jìn)

24、行創(chuàng)建新的聊天室,或選擇一個(gè)已有的 聊天室。用戶創(chuàng)建新聊天可以點(diǎn)擊創(chuàng)建后輸入聊天室名稱,然后點(diǎn)確定。 (10) 用戶在聊天窗口可以發(fā)送消息,服務(wù)器收到消息后廣播給所有登錄用戶。并且在消息顯示區(qū)顯示消息發(fā)送方的昵稱,發(fā)送時(shí)間,消息內(nèi)容。 用戶在聊天室中的在線用戶列表中可以雙擊某個(gè)用戶,隨后彈出私聊窗口,進(jìn)行私聊。 3.1子系統(tǒng)結(jié)構(gòu)圖 (1)客戶端子系統(tǒng) (2)服務(wù)端子系統(tǒng) 3.3分解系統(tǒng)的目的: 聊天室的系統(tǒng)主要由客戶端和服務(wù)端組合而成,故可以分為兩個(gè)子系統(tǒng)。這兩個(gè)子系統(tǒng)可以獨(dú)立的處理客戶和服務(wù)器的各自的需求,如客戶可以填寫(xiě)發(fā)送的消息,服務(wù)器可以查看用戶的消息和用戶的是

25、否在線。 3.4子系統(tǒng)之間的關(guān)系 兩者之間采用JAIN-SIP協(xié)議通過(guò)請(qǐng)求消息和響應(yīng)消息建立通信機(jī)制。 3.5模塊匯總 3.5.1 登錄系統(tǒng) 如表1所示: 用例名稱 登錄系統(tǒng) 范圍 聊天室系統(tǒng)應(yīng)用 級(jí)別 用戶目標(biāo) 主要參與者 登錄用戶 前置條件 無(wú) 成功保證 成功登錄聊天室系統(tǒng) 主成功場(chǎng)景 1. 用戶進(jìn)入登錄窗口界面 2. 用戶輸入昵稱,并點(diǎn)擊登陸,向服務(wù)器端發(fā)送登陸請(qǐng)求 3. 系統(tǒng)驗(yàn)證用戶身份,返回客戶端一個(gè)響應(yīng) 4. 用戶成功登錄系統(tǒng),并進(jìn)入相應(yīng)的聊天室系統(tǒng) 擴(kuò)展 2a. 登錄超時(shí) 1. 系統(tǒng)給出登錄超時(shí)的提示 1

26、. 用戶重新輸入昵稱,并提交 表1 3.5.2 群聊 如表2所示: 用例名稱 用戶群聊 范圍 聊天室系統(tǒng)應(yīng)用 級(jí)別 用戶目標(biāo) 主要參與者 成功登錄的用戶 前置條件 用戶登陸成功 成功保證 成功進(jìn)行群聊 主成功場(chǎng)景 1. 用戶成功登錄后,選擇右側(cè)下方的消息輸入?yún)^(qū) 2. 在輸入?yún)^(qū)輸入消息,并回車,消息發(fā)送 3. 客戶端將用戶發(fā)送的信息打包傳送給服務(wù)器 4. 服務(wù)器對(duì)數(shù)據(jù)進(jìn)行分析后,并將用戶的信息進(jìn)行正確處理 5. 傳給處在聊天室的所有在線其他用戶 6. 將消息正常顯示在上方的消息顯示區(qū)

27、 擴(kuò)展 3a. 消息發(fā)送失敗 1. 系統(tǒng)給出消息發(fā)送失敗的提示 2. 用戶重新輸入消息,進(jìn)行發(fā)送 表2 3.5.3私聊 如表3所示: 用例名稱 用戶私聊 范圍 聊天室系統(tǒng)應(yīng)用 級(jí)別 用戶目標(biāo) 主要參與者 成功登錄的用戶 前置條件 用戶登錄成功,私聊的對(duì)方在線 成功保證 成功進(jìn)行私聊 主成功場(chǎng)景 1. 用戶雙擊在線列表中的某個(gè)用戶 2. 系統(tǒng)彈出私聊窗口 3. 在窗口下方輸入消息,點(diǎn)擊發(fā)送按鈕 4. 系統(tǒng)轉(zhuǎn)發(fā)消息,發(fā)送到指定的私聊用戶,消息顯示在私聊窗口的消息顯示區(qū),進(jìn)行雙方私聊

28、 5. 私聊結(jié)束,點(diǎn)擊關(guān)閉按鈕 擴(kuò)展 3a. 消息發(fā)送失敗 1. 系統(tǒng)給出消息發(fā)送失敗的提示 2. 用戶重新輸入消息,進(jìn)行發(fā)送 特殊需求 不能與不在線的用戶進(jìn)行私聊 表3 3.5.4 創(chuàng)建聊天室 如表4所示: 用例名稱 創(chuàng)建聊天室 范圍 聊天室系統(tǒng)應(yīng)用 級(jí)別 用戶目標(biāo) 主要參與者 成功登錄的用戶 前置條件 用戶登錄成功 成功保證 成功創(chuàng)建聊天室 主成功場(chǎng)景 1. 用戶成功登錄后,點(diǎn)擊創(chuàng)建聊天室 2. 系統(tǒng)彈出新窗口 3. 用戶輸入聊天室名稱點(diǎn)擊確認(rèn) 4. 創(chuàng)建新聊天室,進(jìn)行聊

29、天 擴(kuò)展 3a. 用戶如果輸入已經(jīng)存在的聊天室名稱 1. 系統(tǒng)給出創(chuàng)建失敗的提示 2. 用戶重新輸入,進(jìn)行確認(rèn) 表4 3.5.5 退出系統(tǒng) 如表5所示: 用例名稱 用戶退出系統(tǒng) 范圍 聊天室系統(tǒng)應(yīng)用 級(jí)別 用戶目標(biāo) 主要參與者 成功登錄的用戶 前置條件 用戶成功登錄聊天室 成功保證 用戶在正常情況下退出了聊天室 主成功場(chǎng)景 1. 用戶向服務(wù)器發(fā)送用戶退出消息 2. 服務(wù)器進(jìn)行用戶退出的數(shù)據(jù)處理 3. 服務(wù)器向聊天室其他用戶發(fā)送退出消息 4. 刷新其他在線用戶的用戶列表信息,并顯示

30、當(dāng)前在線人數(shù) 表5 3.6模塊間關(guān)系 領(lǐng)域模型如下圖所示: 群聊順序圖 私聊順序圖 四 . 實(shí)訓(xùn)項(xiàng)目結(jié)果及分析 登陸界面如下: 聊天界面如下: 創(chuàng)建群界面如下: 五 . 實(shí)訓(xùn)項(xiàng)目人員、進(jìn)度安排及完成過(guò)程 小組成員 分工及安排 組長(zhǎng),組織大家討論聊天室UML設(shè)計(jì)模型,編程設(shè)計(jì)思路,解決程序出現(xiàn)的問(wèn)題。 編程人員,主要負(fù)責(zé)通信模式設(shè)計(jì) 編程人員,主要負(fù)責(zé)分析JAIN-SIP API。 調(diào)試程序,分析并解決問(wèn)題。 調(diào)試程序,分

31、析并解決問(wèn)題。 編程人員,主要負(fù)責(zé)消息處理,界面設(shè)計(jì) 六 . 實(shí)訓(xùn)項(xiàng)目心得及體會(huì) 通過(guò)本次的實(shí)訓(xùn)項(xiàng)目的練習(xí),讓我們充分熟悉了sip協(xié)議以及sip在java編程中的實(shí)現(xiàn)方法——jain-sip作為API來(lái)調(diào)用。熟練了我們?cè)趈ava的GUI方面的應(yīng)用、強(qiáng)化了我們對(duì)于面向?qū)ο蟾拍畹睦斫狻⒔涌诘淖饔?;讓我們?duì)UML和OOAD的認(rèn)識(shí)又更近了一層,如何用它們知道需求分析、進(jìn)一步細(xì)分軟件的功能實(shí)現(xiàn)到具體的人員分工。 七 . 附錄(附上實(shí)訓(xùn)項(xiàng)目其他文檔,具體內(nèi)容根據(jù)項(xiàng)目要求確定 7.1穩(wěn)定性和可擴(kuò)展性 提示:在“軟件”生命周期內(nèi),判斷哪些需求是不變的,預(yù)測(cè)哪些需求可能發(fā)生的變化。 在總體

32、設(shè)計(jì)的時(shí)候,既要使總體結(jié)構(gòu)穩(wěn)定,又要適應(yīng)需求變化。 當(dāng)出現(xiàn)代碼異常時(shí),部分會(huì)出現(xiàn)正確的提示,但客戶端的問(wèn)題不會(huì)影響到服務(wù)器端正常的運(yùn)行。用戶之間信息傳輸不會(huì)因?yàn)閿?shù)據(jù)封裝問(wèn)題出現(xiàn)丟失或亂碼。因用戶的誤操作產(chǎn)生的非法輸入信息會(huì)得到驗(yàn)證及時(shí)的處理或信息提示。 軟件應(yīng)正常完成所有功能需求。服務(wù)器能長(zhǎng)時(shí)間運(yùn)行無(wú)故障,但當(dāng)客戶訪問(wèn)量大時(shí)或客戶發(fā)送信息量大時(shí),服務(wù)器可能會(huì)出現(xiàn)端口阻塞現(xiàn)象,消息得不到響應(yīng),甚至服務(wù)器癱瘓。 由于采用JAVA設(shè)計(jì),故可移植性較好。該軟件項(xiàng)目將界面程序和后臺(tái)處理程序分在不同的包中,服務(wù)器和客戶端也是在不同的包中,這樣將來(lái)還一些可以擴(kuò)展系統(tǒng)的功能。 7.2 性能分析

33、提示: (1)本系統(tǒng)應(yīng)當(dāng)具備哪些性能指標(biāo)才能滿足用戶的需求? (2)如何實(shí)現(xiàn)性能指標(biāo)? 1. 安全性 用戶的合法性不能被偽裝。防止網(wǎng)絡(luò)對(duì)服務(wù)器的攻擊。用戶的信息應(yīng)該盡可能不能被黑客截取。該軟件項(xiàng)目目前的安全性還有待進(jìn)一步提升,考慮沒(méi)有使用數(shù)據(jù)庫(kù),且傳輸安全模式還有待進(jìn)一步測(cè)試。 2. 擴(kuò)展性 系統(tǒng)建成后,應(yīng)在現(xiàn)行系統(tǒng)上不需要做大的改動(dòng)或不影響整個(gè)系統(tǒng)結(jié)構(gòu),就可以增加功能模塊,這就必須在系統(tǒng)設(shè)計(jì)時(shí)留有接口,使其具有可擴(kuò)展性和維護(hù)性。該軟件使用了接口,為了將來(lái)的擴(kuò)展留有空間。 3. 易用性 系統(tǒng)操作的界面必須簡(jiǎn)潔、操作方便易用、設(shè)計(jì)合理。由于這次是實(shí)驗(yàn)軟件,功能并不

34、繁多,簡(jiǎn)單易用,但界面不夠美化??梢酝ㄟ^(guò)設(shè)計(jì)更好的Swing界面解決。 l 基于O-SIP聊天室的開(kāi)發(fā) 一 . 實(shí)訓(xùn)項(xiàng)目目的和要求(說(shuō)明通過(guò)本項(xiàng)目希望達(dá)到的目的和要求) l 熟悉JAIN-SIP協(xié)議規(guī)定的通信工程; l 完成一個(gè)基于控制臺(tái)的聊天室,最基本要實(shí)現(xiàn)公聊和私聊內(nèi)容; 二 . 實(shí)訓(xùn)項(xiàng)目開(kāi)發(fā)環(huán)境(說(shuō)明本項(xiàng)目需要的環(huán)境) 軟件環(huán)境 各種版本的widows操作系統(tǒng)(X86) 硬件環(huán)境 CPU:英特爾80386以上配置 內(nèi)存:32MB 硬盤(pán)空間:128M 接口/協(xié)議的約束:支持標(biāo)準(zhǔn)的IP,TCP傳輸協(xié)議 軟件質(zhì)量的約束,如正確性、健壯

35、性、可靠性、效率(性能)、易用性、 清晰性、安全性、可擴(kuò)展性、兼容性、可移植性等等。 軟件需求能在各種Windows操作系統(tǒng)上使用;能連續(xù)工作7*24小時(shí), 界面清晰,易于使用;最大支持2000個(gè)用戶同時(shí)在線聊天;支持可以進(jìn)一步擴(kuò)大在線人數(shù),切在客戶端可以進(jìn)一步添加功能。 三 . 實(shí)訓(xùn)項(xiàng)目?jī)?nèi)容(說(shuō)明本項(xiàng)目的內(nèi)容,如:?jiǎn)栴}分析、設(shè)計(jì)方案、算法、設(shè)計(jì)圖等) 3.1軟件系統(tǒng)結(jié)構(gòu)圖 3.2.1客戶端系統(tǒng)登錄模塊 3.2.2 客戶端聊天功能模塊 3.2.3 客戶端系統(tǒng)功能模塊 3.2.4 服務(wù)器端轉(zhuǎn)發(fā)功能模塊 3.2.5 服務(wù)器日志備份模塊

36、 3.3功能模塊設(shè)計(jì)概述 3.3.1 模塊匯總 子系統(tǒng)A O-SIP聊天室客戶端 模塊名稱 功能概述 系統(tǒng)登錄 登錄客戶端,需要輸入用戶名和客戶端所在的IP地址,自動(dòng)分配一個(gè)(8000-999號(hào))端口; 聊天功能 直接輸入想說(shuō)的話可以實(shí)現(xiàn)聊天室公共發(fā)言; “$$$+想說(shuō)的話”可以與某一在線用戶私密聊天(前提要先設(shè)置密聊對(duì)象); 接受公共聊天和私密聊天的內(nèi)容; 系統(tǒng)功能 發(fā)送“***list”,服務(wù)器可以返回當(dāng)前在線用戶URL; 發(fā)送“***help”客戶端會(huì)提供所有支持的系統(tǒng)功能提示; 發(fā)送“***quit”客戶端會(huì)退出,并發(fā)送離開(kāi)消息給服務(wù)器,服務(wù)器給所有用戶

37、廣播此離開(kāi)消息; O-SIP聊天室服務(wù)器端 模塊名稱 功能概述 轉(zhuǎn)發(fā)功能 接收用戶的信息并按照不同的類型,重新包裝發(fā)送(其中用戶登錄消息和離開(kāi)消息為廣播,私聊消息為轉(zhuǎn)發(fā),查詢?cè)诰€用戶消息為回發(fā)); 日志備份 接收每個(gè)用戶的每一條信息(包括公聊,私聊,以及系統(tǒng)信息),加入服務(wù)器的系統(tǒng)時(shí)間,保存在“D:\\log.txt”文件里; 3.4 模塊之間的關(guān)系 四 . 實(shí)訓(xùn)項(xiàng)目結(jié)果及分析 目前我們O-SIP的聊天室系統(tǒng)的開(kāi)發(fā)主要是基于控制臺(tái),由于開(kāi)發(fā)時(shí)間比較倉(cāng)促,所以用戶界面設(shè)計(jì)部分還未完成,在后續(xù)的開(kāi)發(fā)和維護(hù)中我們將此部分予以完善,給用戶展示一個(gè)美觀,易用,可靠的用戶

38、界面。 五 . 實(shí)訓(xùn)項(xiàng)目人員、進(jìn)度安排及完成過(guò)程 小組成員 分工及安排 組織大家討論聊天室UML設(shè)計(jì)模型,編程設(shè)計(jì)思路,解決程序出現(xiàn)的問(wèn)題。 編程人員,主要負(fù)責(zé)通信模式設(shè)計(jì) 編程人員,主要負(fù)責(zé)分析O-SIP API。 調(diào)試程序,分析并解決問(wèn)題。 調(diào)試程序,分析并解決問(wèn)題。 編程人員,主要負(fù)責(zé)消息處理,界面設(shè)計(jì) 六 . 實(shí)訓(xùn)項(xiàng)目心得及體會(huì) 在這次O-SIP聊天室系統(tǒng)的開(kāi)發(fā)過(guò)程中,雖然我們遇到過(guò)許多困難,經(jīng)歷了許多波折,但最終設(shè)計(jì)出的軟件還是符合我們最初的設(shè)想,由于開(kāi)發(fā)的時(shí)間比較倉(cāng)促,軟件還有許多方面需要完善,但是我們?nèi)匀皇斋@很大,主要體

39、現(xiàn)在以下兩個(gè)方面: l 讓我們深刻理解了團(tuán)隊(duì)的力量在軟件開(kāi)發(fā)中的作用。在 開(kāi)發(fā)過(guò)程中我們遇到過(guò)許多莫名其妙的問(wèn)題,通過(guò)大家在一起交流,最后都一一解決了,如果讓個(gè)人去解決,由于每個(gè)人的思維定勢(shì)和編程經(jīng)驗(yàn)的限制,可能最后解決這個(gè)問(wèn)題會(huì)花費(fèi)大量的時(shí)間,從而嚴(yán)重影響我們開(kāi)發(fā)的效率。但是通過(guò)大家在一起討論,研究,這些問(wèn)題很快就解決了,因此團(tuán)隊(duì)協(xié)作的力量對(duì)開(kāi)發(fā)效率的影響是不容忽視的,現(xiàn)在的軟件開(kāi)發(fā)行業(yè)再不是個(gè)人英雄主義,而是更加注重團(tuán)隊(duì)的力量。 l 采用科學(xué)的軟件設(shè)計(jì)的方法。在組長(zhǎng)同學(xué)的組織下,我們首先對(duì)項(xiàng)目的需求分析進(jìn)行討論,每個(gè)組員都可以表達(dá)自己的觀點(diǎn),然后大家一起討論,確定最終的設(shè)計(jì)方案,因此我

40、們組花了大量的時(shí)間進(jìn)行需求分析,運(yùn)用軟件工程的思想和面向?qū)ο蠓治龊驮O(shè)計(jì)方面的知識(shí),對(duì)整個(gè)項(xiàng)目進(jìn)行設(shè)計(jì),最終確定出我們認(rèn)為最合理,最優(yōu)化的方案,然后分配給每個(gè)組員相應(yīng)的任務(wù),在限定的時(shí)間內(nèi)完成,然后再大家一起交流自己的任務(wù)完成情況,以及遇到的問(wèn)題,充分發(fā)揮集體的智慧大家一起解決,這樣提高了我們開(kāi)發(fā)項(xiàng)目的效率,同時(shí)在我們實(shí)際項(xiàng)目中采用迭代式開(kāi)發(fā)方式,對(duì)于這種開(kāi)發(fā)方式的好處,經(jīng)過(guò)這次實(shí)際項(xiàng)目的鍛煉,讓我們才真正領(lǐng)悟到它的長(zhǎng)處。在設(shè)計(jì)時(shí)運(yùn)用UML方法,讓我們的設(shè)計(jì)方案更加規(guī)范,整個(gè)項(xiàng)目分析和設(shè)計(jì)流程更加合理,同時(shí)也取得比較好的結(jié)果。 七 . 附錄(附上實(shí)訓(xùn)項(xiàng)目其他文檔,具體內(nèi)容根據(jù)項(xiàng)目要求確定 由

41、于開(kāi)發(fā)時(shí)間比較倉(cāng)促,以及我們開(kāi)發(fā)團(tuán)隊(duì)技術(shù)能力和經(jīng)驗(yàn)方面的限制,所以在以下幾個(gè)方面還有不足之處,在后續(xù)的開(kāi)發(fā)過(guò)程中我們將予以改進(jìn)和完善。 l 容錯(cuò)性需求 當(dāng)出現(xiàn)代碼異常時(shí),出現(xiàn)正確的提示,不會(huì)影響整個(gè)系統(tǒng)的運(yùn)行。用戶之 間信息傳輸不會(huì)因?yàn)閿?shù)據(jù)封裝問(wèn)題出現(xiàn)丟失或亂碼。因用戶的誤操作產(chǎn)生的異常應(yīng)作為及時(shí)的處理或信息提示。 l 軟件設(shè)計(jì)可靠性 要確定合適的模塊粒度,各模塊之間要求松耦合,高內(nèi)聚;從而使整個(gè)系統(tǒng)的可靠性和穩(wěn)定性得到提高,并且便于系統(tǒng)維護(hù)和新模塊的添加。 l 安全性 安全性是防止網(wǎng)絡(luò)方面的攻擊。在后續(xù)的開(kāi)發(fā)中我們將采用數(shù)據(jù)加密存儲(chǔ) 技術(shù),因?yàn)閿?shù)據(jù)大多數(shù)是明文存放,如果黑客一旦有機(jī)會(huì)侵入系統(tǒng),如果 是明文存放的,該數(shù)據(jù)很容易暴露出來(lái)。所以對(duì)一些核心數(shù)據(jù),需要在數(shù) 據(jù)存儲(chǔ)時(shí),就進(jìn)行了數(shù)據(jù)加密。 l 易用性 由于我們的系統(tǒng)是基于控制臺(tái)的,所以在用戶在客戶端操作起來(lái)不是很方便,因此在后續(xù)的開(kāi)發(fā)中,我們將開(kāi)發(fā)出基于MFC的圖形用戶界面,充分發(fā)揮“以用戶為中心的進(jìn)行設(shè)計(jì)”設(shè)計(jì)理念,從設(shè)計(jì)過(guò)程的開(kāi)端便把用戶所關(guān)注的東西包含于其中,并規(guī)定用戶應(yīng)該是任何設(shè)計(jì)決定中最重要的因素

展開(kāi)閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!