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

正文內(nèi)容

畢業(yè)設(shè)計論文-基于java即時聊天系統(tǒng)的設(shè)計與實現(xiàn)(編輯修改稿)

2024-12-22 18:37 本頁面
 

【文章內(nèi)容簡介】 設(shè)備上,如跨越 IBM 個人電腦、 MAC 蘋果計算機(jī)、各種微處理器硬件平臺,以及Windows、 Unix、 OS/ MAC OS 等系統(tǒng)平臺,真正實現(xiàn)“一處編寫,到處運(yùn)行”。Java 非常適合于企業(yè)網(wǎng)絡(luò)和 Inter 環(huán)境,并且已成為 Inter 中最具影響力、最受歡迎的編程語言之一。 與目前常用的 C++語言相比, Java 語言簡潔得多,而且提高了可靠性,除去了最大的程序根源錯誤,此外它還有較高的安全性,可以說它是有史以來最為卓越的編程語言。 Java 語言編寫的程序既是編譯型的,又是解釋型的。程序代碼經(jīng)過編譯之后轉(zhuǎn)換為一種稱為 Java 字節(jié)碼的中間語言, Java 虛擬機(jī)( JVM)將對字節(jié)碼進(jìn)行解釋和運(yùn)行。編譯只進(jìn)行一次,而解釋在每次運(yùn)行程序時都會進(jìn)行。編譯后的字節(jié)碼采用一種針對 JVM 優(yōu)化過的機(jī)器碼的形式保存,虛擬機(jī)將字節(jié)碼解釋為機(jī)器碼,然后在計算機(jī)上運(yùn)行。 Java 語言的特點包括 :簡單、面向?qū)ο?、分布性、可移植性、解釋型? 安全性、健壯性、多線程、高性能、動態(tài)。 MyEclipse 簡介 MyEclipse,是基于 Eclipse 開發(fā)的功能強(qiáng)大的企業(yè)級集成開發(fā)環(huán)境,主要用于Java、 Java EE 以及移動應(yīng)用的開發(fā)。據(jù)官方介紹,諸如三星、 IBM、戴爾、惠普、花旗集團(tuán)、西門子、斯坦福大學(xué)、波音公司等知名機(jī)構(gòu)均使用 MyEclipse 進(jìn)行 Java、JavaEE 開發(fā), 80%以上的全球財富 100 強(qiáng)企業(yè)均是 MyEclipse 的用戶。 MyEclipse 提供了對 UML、 Ajax、 Web、 Web Services、 J2EE、 JSP、 XML、 Struts、 JSF、 Java Persistence、 EJB、擴(kuò)展數(shù)據(jù)庫以及各種應(yīng)用服務(wù)器的集成支持 [4]。MyEclipse 也全面支持各種主流的第三方框架,讓你能夠快速高效地進(jìn)行開發(fā)工作。此外, MyEclipse 還全面支持各種基于 Eclipse 平臺的插件,允許你自由定制或擴(kuò)展個性化功能。 MyEclipse 全面支持 Eclipse 開源平臺的所有功能特性,如果你熟悉 Eclipse,那么你能夠輕松地上手 MyEclipse,包括熟悉的 Eclipse 快捷鍵,而且使用 MyEclipse 完成某項任務(wù)往往要比使用 Eclipse 更加快速、簡單 [5]。 Oracle 簡介 Oracle Database,又名 Oracle RDBMS,或簡稱 Oracle。是 甲骨文公司 的一款 關(guān)系數(shù)據(jù)庫管理系統(tǒng) 。它是在數(shù)據(jù)庫領(lǐng)域一直處于領(lǐng)先地位的產(chǎn)品??梢哉f Oracle 數(shù)據(jù)庫系統(tǒng)是目前世界上流行的關(guān)系數(shù)據(jù)庫管理系統(tǒng),系統(tǒng)可移植性好、使用方便、功能強(qiáng),適用于各類大、中、小、微機(jī)環(huán) 境。它是一種高效率、可靠性好的 適應(yīng)高吞吐量的數(shù)據(jù)庫解決方案。 ORACLE 數(shù)據(jù)庫系統(tǒng) 是美國 ORACLE 公司( 甲骨文 ) 提供的以 分布式數(shù)據(jù)庫 為核心的一組軟件產(chǎn)品,是目前最流行的客戶 / 服務(wù)器(CLIENT/SERVER)或 B/S 體系結(jié)構(gòu) 的數(shù)據(jù)庫之一。比如 SilverStream 就是基于數(shù)據(jù) 6 庫的一種中間件。 ORACLE 數(shù)據(jù)庫是目前世界上使用最為廣泛的 數(shù)據(jù)庫管理系統(tǒng) ,作為一個通用的數(shù)據(jù)庫系統(tǒng),它具有完整的 數(shù)據(jù)管理 功能;作為一個關(guān)系數(shù)據(jù)庫,它是一個完備關(guān)系的產(chǎn)品;作為分布式數(shù)據(jù)庫它實現(xiàn)了 分布式處理 功能。但它的所有知識,只要在一種機(jī)型上學(xué)習(xí)了 ORACLE 知識,便能在各種類型的機(jī)器上使用它 [7]。 網(wǎng)絡(luò)通信協(xié)議簡介 網(wǎng)絡(luò)通信協(xié)議為連接不同操作系統(tǒng)和不同硬件體系結(jié)構(gòu)的互聯(lián)網(wǎng)絡(luò)提供通信支持,是一種網(wǎng)絡(luò)通用語言。 網(wǎng)絡(luò)通信的層次結(jié)構(gòu)和網(wǎng)絡(luò)通信的協(xié)議,是開發(fā)網(wǎng)絡(luò)程序的基礎(chǔ)。目前在網(wǎng)絡(luò)編程方面最常用的是 TCP/IP 和 UDP 通信協(xié)議。通過這些協(xié)議,網(wǎng)絡(luò)通信各主機(jī)可以用一種統(tǒng)一而非雜亂的規(guī)范,高效便捷地相互發(fā)送和接收消息。本系統(tǒng)在通訊功能實現(xiàn)中采用了 TCP傳輸協(xié)議,直接使用的 Java API提供的類 Socket和 Serversocket 等來實現(xiàn)。 ( 1) TCP 傳輸協(xié)議說明 TCP 協(xié)議是面向連接的協(xié)議,比如說在客戶端 A 和 B 進(jìn)行連接之前必須首先建立數(shù)據(jù)通路,就向打電話一樣,在通話之前必須先撥號,等待對方的接聽以后才能進(jìn)行通話 。 TCP 協(xié)議中數(shù)據(jù)傳輸采取的是同步方式,當(dāng)數(shù)據(jù)發(fā)送到對方時,必須等待接收方的應(yīng)答信號后才能繼續(xù)下一次的發(fā)送工作,即通常所講的三次握手。由于 TCP協(xié)議采用的是這種連接方式,因此由它建立的連接是可靠的。在網(wǎng)絡(luò)不是十分理想的情況下,速度犧牲很大,但是卻能夠保證所傳輸?shù)臄?shù)據(jù)的正確性。 ( 2) UDP 傳輸協(xié)議說明 UDP 協(xié)議采用的是面向無連接的通信方式,它在通信前不需要提前建立通信鏈路,它是異步的,數(shù)據(jù)的發(fā)送比較迅速,不需要等待應(yīng)答信號。優(yōu)點是發(fā)送速度較快,但是在數(shù)據(jù)的一致性方面不好,在網(wǎng)絡(luò)差的情況下,容易丟失數(shù)據(jù)包 。另外,使用UDP 傳輸數(shù)據(jù)時對數(shù)據(jù)是有大小限制的,每個被傳輸?shù)陌仨毾薅ㄔ?64KB 之內(nèi) [6]。 ( 3) Java Socket(套接字 )說明 在 Java 語言里,使用 Socket(套接字 )模型來封裝網(wǎng)絡(luò)傳輸?shù)木唧w動作。 Java 提供了 Socket 的相關(guān)包, Java 中 Socket 的設(shè)計采用了面向?qū)ο蟮乃悸罚M了 TCP 協(xié)議里客戶端和服務(wù)器端的通信流程,并封裝了創(chuàng)建連接、發(fā)送接收數(shù)據(jù)流、斷開連接等方法。所以,使用 Socket 包,程序員不僅可以創(chuàng)建客戶端和服務(wù)器之間的通信信道,還能實現(xiàn)發(fā)送和接收數(shù)據(jù)流等的網(wǎng)絡(luò)通信功 能 [8]。 針對一個特定的連接和通信過程,服務(wù)器和客戶端程序里都有一個 Socket 對象,我們可以想象一下其場景,在通信過程中,有一條虛擬的“光纜”構(gòu)架在服務(wù)器和客戶端之間,光纜的兩頭都插在了 Socket 這“插座”里。事實上, Java 采用 Socket 包是對 TCP 協(xié)議的進(jìn)一步抽象,更向程序員屏蔽了 TCP 通信的細(xì)節(jié),具體表現(xiàn)在以下兩方面 。 一、 在使用 Socket 類里的方法建立信道的時候, Socket 類屏蔽了通過三次握手建立信道的全部流程,直接向程序員返回信道類的句柄 (Socket 類的實例 )或是出錯信息。 二、 Socket 類向程序員屏蔽了服務(wù)器和客戶端之間的物理硬件指標(biāo)和底層的連 7 接方式,所以我們在使用 Socket 類開發(fā)網(wǎng)絡(luò)程序時,可以簡單地調(diào)用其提供的方法來傳輸數(shù)據(jù),而不必關(guān)心數(shù)據(jù)流的傳輸和接收方式。 C/S 模式 20世紀(jì) 90年代出現(xiàn)并迅速占據(jù)主導(dǎo)地位的一種計算模式為客戶機(jī) /服務(wù)器模式,簡稱為 C/S 模式,它實際上就是把主機(jī) — 終端模式中原來全部集中在主機(jī)部分的任務(wù)一分為二,保留在主機(jī)上的部分負(fù)責(zé)集中處理和匯總運(yùn)算,成為服務(wù)器;而下放到終端的部分負(fù)責(zé)為用戶提供友好的交互界面,稱為客戶機(jī)。相對于以前的模式, C/S 模式最大 的改進(jìn)是不再把所有軟件都裝進(jìn)一臺計算機(jī),而是把應(yīng)用系統(tǒng)分成兩個不同的角色和兩個不同的地位:一般在運(yùn)算能力較強(qiáng)的計算機(jī)上安裝服務(wù)器端程序,而在一般的 PC 上安裝客戶機(jī)程序。正是由于個人 PC 機(jī)的出現(xiàn)使客戶機(jī) /服務(wù)器模式成為可能,因為 PC 機(jī)具有一定的運(yùn)算能力,用它代替了上面第一種模式的啞終端后,就可以把主機(jī)端的一部分工作放在客戶機(jī)端完成,從而減輕了主機(jī)的負(fù)擔(dān),也增加了系統(tǒng)對用戶的響應(yīng)速度和響應(yīng)能力 [9]。 客戶機(jī)和服務(wù)器之間通過相應(yīng)的網(wǎng)絡(luò)協(xié)議來進(jìn)行通訊??蛻魴C(jī)向服務(wù)器發(fā)出數(shù)據(jù)請求,服務(wù)器將數(shù)據(jù)傳送給客戶機(jī)進(jìn)行計算, 計算完畢,計算結(jié)果可返回給服務(wù)器。這種模式的優(yōu)點充分利用了客戶機(jī)的性能,使計算能力大大提高;另外,由于客戶機(jī)和服務(wù)器之間的通訊是通過網(wǎng)絡(luò)協(xié)議進(jìn)行的,是一種邏輯的聯(lián)系,因此物理上在客戶機(jī)和服務(wù)器兩端是易于擴(kuò)充的。 C/S 模式是目前占主流的網(wǎng)絡(luò)計算模式。 8 第 3 章 需求分析 系統(tǒng)基本功能描述 客戶端可以實現(xiàn)注冊,登錄,即時聊天,相互之間收發(fā)文件,發(fā)送截圖,查看歷史聊天記錄等功能。收發(fā)消息時,可以實現(xiàn)離線接收。 服務(wù)器端應(yīng)當(dāng)建立一個 ServerSocket,并且不斷進(jìn)行偵聽是否有客戶端連接或者斷開連接 (包 括判斷沒有響應(yīng)的連接超時 )。 服務(wù)器端應(yīng)當(dāng)是一個信息發(fā)送中心,所有客戶端的信息都傳到服務(wù)器端,由服務(wù)器端根據(jù)要求分發(fā)信息。 在后臺管理系統(tǒng),可以到對用戶進(jìn)行增刪改查,查看在線用戶,和踢用戶下線。 系統(tǒng)需求分析 聊天系統(tǒng)不外乎兩個方面,服務(wù)器端和客戶端。簡單分析一下兩個方面所要完成的任務(wù),對設(shè)計這個程序來說,等于完成了一半。首先來看一下服務(wù)器端的任務(wù): ( 1) 服務(wù)器端應(yīng)當(dāng)建立一個 ServerSocket,并且不斷進(jìn)行偵聽是否有客戶端連接或者斷開連接 (包括判斷沒有響應(yīng)的連接超時 )。 ( 2) 服務(wù) 器端應(yīng)當(dāng)是一個信息發(fā)送中心,所有客戶端的信息都傳到服務(wù)器端,由服務(wù)器端根據(jù)要求分發(fā)信息。 以上就是服務(wù)器端最主要的兩個任務(wù)。不難看出,服務(wù)器端的任務(wù)并不復(fù)雜。 客戶端應(yīng)該完成的工作包括: ( 1) 與服務(wù)器端建立通信通道,向服務(wù)器端發(fā)送信息。 ( 2) 接收來自服務(wù)器的信息。 相對服務(wù)器而言,客戶端的任務(wù)更加簡單,有了以上的簡單分析,可以知道,解決上述四個問題,即完成了該聊天系統(tǒng)的核心。 數(shù)據(jù)流圖 數(shù)據(jù)流圖( DFD),是從數(shù)據(jù)傳遞和加工角度,以圖形方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流 向和邏輯變換過程。是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達(dá)工具及用于表示軟件模型的一種圖示方法 [10]。 9 圖 31 系統(tǒng)頂層數(shù)據(jù)流圖 圖 32 客戶端數(shù)據(jù)流圖 圖 33 服務(wù)器端數(shù)據(jù)流圖 10 數(shù)據(jù)字典 數(shù)據(jù)字典的作用主要是對數(shù)據(jù)流程圖中的數(shù)據(jù)項,數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)流,處理邏輯,數(shù)據(jù)存儲和外部實體等方面進(jìn)行具體的定義 錯誤 !未找到引用源。 。建立數(shù)據(jù)字典的目的是為了保證全 局?jǐn)?shù)據(jù)的一致性和準(zhǔn)確性。數(shù)據(jù)字典配以數(shù)據(jù)流程圖就可以從圖形和文字兩方面對系統(tǒng)做出完整的定義和描述 錯誤 !未找到引用源。 。 ( 1)數(shù)據(jù)項: MSG_ID 含義說明:消息 ID 別名:消息 ID 類型: NUMBER ( 2)數(shù)據(jù)項: MSG_CONTENT 含義說明:消息內(nèi)容 別名:消息內(nèi)容 類型: VARCHAR2 長度: 2020 ( 3)數(shù)據(jù)項: MSG_SENDFROM 含義說明:消息發(fā)送者 別名:消息發(fā)送者 類型: INTEGER ( 4)數(shù)據(jù)項: MSG_SENDTO 含義說明:消息接收者 別名:消息接收者 類型: INTEGER ( 5)數(shù)據(jù)項: MSG_SENDTIME 含義說明:消息發(fā)送時間 別名:消息發(fā)送時間 類型: DATE ( 6)數(shù)據(jù)項: MSG_REMARK 含義說明:備注 別名:備注 類型: VARCHAR2 長度: 3000 ( 7)數(shù)據(jù)項: MSG_TYPE 含義說明:消息類型,如是群聊消息還是私聊消息 別名:消息類型 類型: VARCHAR2 長度: 2 11 ( 1)數(shù)據(jù)項: U_ID 含義說明:用戶 ID 別名:用戶 ID 類型: NUMBER ( 2)數(shù)據(jù)項: U_NAME 含義說明:用戶名 別名:用戶名 類型: VARCHAR2 長度: 50 ( 3)數(shù)據(jù)項: U_PWD 含義說明:用戶密碼 別名:用戶密碼 類型: VARCHAR2 長度: 50 ( 4)數(shù)據(jù)項: U_IP 含義說明: IP 地址 別名: IP 地址 類型: VARCHAR2 長度: 50 ( 5)數(shù)據(jù)項: U_STATE 含義說明:用戶狀態(tài) 別名:用戶狀態(tài) 類型: VARCHAR2 長度: 50 ( 6)數(shù)據(jù)項: U_GENDER 含義說明:性別 別名:性別 類型: VARCHAR2 長度: 50 ( 7)數(shù)據(jù) 項: U_EMAIL 含義說明:電子郵件 別名:電子郵件 類型: VARCHAR2 長度: 50 ( 8)數(shù)據(jù)項: U_LAST_LOGIN 含義說明:最后一次登錄 別名:最后一次登錄 12 類型: DATE ( 9)數(shù)據(jù)項: U_LAST_EXIT 含義說明:最后一次退出 別名:最后一次退出 類型: DATE ( 10)數(shù)據(jù)項: U_REMARKE 含義說明:備用 別名:備用 類型: VARCHAR2 長度: 3000 ( 11)數(shù)據(jù)項: U_SIGNATURE 含義說明:個性簽名 別名:個性簽名 類型: VARCHAR2 長度: 100 ( 12)數(shù)據(jù)項: U_HEAD_IMG 含義說明:用戶頭像 別名:用戶頭像 類型: VARCHAR2 長度: 100 ( 13)數(shù)據(jù)項: U_TYPE 含義說明:類型 別名:類型 類型: VARCHAR2 長度: 50 ( 14)數(shù)據(jù)項: U_BIRTHDAY 含義說明:用戶生日 別名:用戶生日
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1