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

正文內(nèi)容

基于java即時(shí)聊天系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)論文92818(文件)

 

【正文】 3)即時(shí)消息的長(zhǎng)度盡量足夠的長(zhǎng)。這樣在協(xié)議動(dòng)作的過(guò)程中,雙方必須交換信息,包括控制信息、狀態(tài)信息等等。 即時(shí)通訊系統(tǒng)需求 注冊(cè)需求(1)即時(shí)通訊系統(tǒng)擁有多個(gè)賬戶,允許多個(gè)用戶注冊(cè);(2)一個(gè)用戶可以注冊(cè)多個(gè)ID;(3)注冊(cè)所使用的帳號(hào)類(lèi)型為字母ID。圖1 2層C/S結(jié)構(gòu)示意圖客戶層也叫做應(yīng)用表示層,也就是我們說(shuō)的客戶端,這是應(yīng)用程序的用戶接口部分。若通訊用戶變更,系統(tǒng)只需要改寫(xiě)顯示控制和數(shù)據(jù)檢查程序就可以了,而不會(huì)影響其他兩層。 工作方式和技術(shù)原理典型的IM工作方式如下:登陸CHAT通訊服務(wù)器,獲取一個(gè)自建立的歷史的交流對(duì)象列表(同事列表),然后自身標(biāo)志為在線狀態(tài),當(dāng)好友列表中的某人在任何時(shí)候登錄上線并試圖通過(guò)你的計(jì)算機(jī)聯(lián)系你時(shí),IM系統(tǒng)會(huì)發(fā)一個(gè)消息提醒你,然后你能與他建立一個(gè)聊天會(huì)話通道進(jìn)行各種消息如鍵入文字、通過(guò)語(yǔ)音等的交流,從技術(shù)上來(lái)說(shuō),聊天系統(tǒng)的基本技術(shù)原理如下:第一步,用戶A輸入自己的用戶名和密碼登錄IM服務(wù)器,服務(wù)器通過(guò)讀取用戶數(shù)據(jù)庫(kù)來(lái)驗(yàn)證用戶身份,如果驗(yàn)證通過(guò),登記用戶A的IP地址、IM客戶端軟件的版本號(hào)及使用的TCP/UDP端口號(hào),然后返回用戶A登錄成功的標(biāo)志,此時(shí)用戶A在IM系統(tǒng)中的狀態(tài)為在線(Online Presence)?!?】(2)在線代理通訊用戶A與用戶B的點(diǎn)對(duì)點(diǎn)通訊由于防火墻、網(wǎng)絡(luò)速度等原因難以建立或者速度很慢,IM服務(wù)器將會(huì)主動(dòng)提供消息中轉(zhuǎn)服務(wù),即用戶A和用戶B的即時(shí)消息全部先發(fā)送到IM服務(wù)器,再由服務(wù)器轉(zhuǎn)發(fā)給對(duì)方。需求分析系統(tǒng)設(shè)計(jì)詳細(xì)設(shè)計(jì)與編碼軟件測(cè)試 軟件運(yùn)行與維護(hù)圖2 即時(shí)通訊系統(tǒng)開(kāi)發(fā)流程圖該即時(shí)聊天工具按如下過(guò)程完成通信:(1)客戶向服務(wù)器注冊(cè),告知服務(wù)器該客戶監(jiān)聽(tīng)某主題;(2)客戶注冊(cè)之后,向服務(wù)器發(fā)送消息;(3)服務(wù)器再把消息發(fā)送給所有監(jiān)聽(tīng)此主題的客戶。(2)服務(wù)器端是一個(gè)信息發(fā)送中心,所有客戶端的信息都傳到服務(wù)器端,再由服務(wù)器根據(jù)要求分發(fā)出去。(2)用戶登錄:客戶端與服務(wù)器端建立通信信道,向服務(wù)器端發(fā)送信息,完成用戶登錄。在Hibernate中,各表的映射文件….,在本系統(tǒng)中,用戶表信息可以用Xml代碼實(shí)現(xiàn)。針對(duì)TCP/IP協(xié)議的數(shù)據(jù)結(jié)構(gòu),設(shè)計(jì)服務(wù)器的程序結(jié)構(gòu)需要考慮以下的因素:(1)多線程;(2)多進(jìn)程;(3)單線程??蛻舳酥辉谛枰臅r(shí)候向服務(wù)器端發(fā)出連接請(qǐng)求。這條語(yǔ)言表示的意思就是聲明一個(gè)公共類(lèi)AppServer,用子類(lèi)Thread繼承父類(lèi)AppServer中的一些變量。值得強(qiáng)調(diào)的是布爾型數(shù)據(jù)只有兩個(gè)值true和false,并且它們不對(duì)應(yīng)人數(shù)整數(shù)值。 }這是一條if條件判斷語(yǔ)句,它表示變量start如果不為空,那么執(zhí)行語(yǔ)句第一個(gè)大括號(hào)中的語(yǔ)句,如果為空,則執(zhí)行else中的語(yǔ)句。 } } catch (IOException e) { log(e, 不能監(jiān)聽(tīng)!)。 登錄驗(yàn)證模塊系統(tǒng)的登錄模塊是比較重要的,這是用戶的一個(gè)身份驗(yàn)證,是通訊系統(tǒng)必須的一個(gè)功能模塊。符合不符合登陸系統(tǒng)輸入信息驗(yàn)證進(jìn)入系統(tǒng)圖5 用戶登錄流程圖 注冊(cè)處理模塊新建用戶是即時(shí)通訊工具的一個(gè)基本功能。下面就來(lái)解決這樣一個(gè)問(wèn)題。 用戶注冊(cè)模塊當(dāng)用戶向服務(wù)器端發(fā)出注冊(cè)請(qǐng)求后,客戶端將向服務(wù)器發(fā)送客戶傳遞的信息,諸如客戶的昵稱(chēng)、性別、個(gè)人資料等信息。JButton btnOk,btnCancel,btnClear。)。JButton btnOk,btnCancel,btnClear。見(jiàn)圖7。從中獲取登錄填寫(xiě)的信息,根據(jù)用戶名和密碼在數(shù)據(jù)庫(kù)中查找數(shù)據(jù),如果能夠找到表示登錄成功,反之,登錄不成功。 if ((btnLogin)) { if(().equals() || ().equals()) { JOptionPane op1=new JOptionPane()。 }}}該語(yǔ)句表示的意思為接受用戶登陸信息,如果用戶名或者密碼為空,則彈出提示信息,如果不為空,則調(diào)用login方法。其實(shí)現(xiàn)代碼如下:for (int i=0。 }這里采用了for循環(huán),定義變量i,初值為0,只要i滿足。使用Socket對(duì)網(wǎng)絡(luò)上某一個(gè)服務(wù)器的某一個(gè)端口發(fā)出連接請(qǐng)求,一旦連接成功,打開(kāi)會(huì)話;會(huì)話完成后,關(guān)閉Socket。關(guān)鍵代碼如下: public void sendMessage() { =strLoginName。//向服務(wù)器發(fā)送信息 try{ Socket toServer=new Socket(strServerIp,1001)。 //清空文本框 ()。參數(shù)strServerIp為通信協(xié)議的協(xié)議族,1001則為服務(wù)器IP。toServer=new Socket(strServerIp,1001)。 //收來(lái)自服務(wù)器的信息由于上文以對(duì)很多方法進(jìn)行講解,現(xiàn)主要對(duì)ObjectOutputStream進(jìn)行講解。如果流是網(wǎng)絡(luò)套接字流,則可以在另一臺(tái)主機(jī)上或另一個(gè)進(jìn)程中重構(gòu)對(duì)象。 lazy指定是否采用延遲加載及加載策略,設(shè)置為false,表示此關(guān)聯(lián)對(duì)象不采用延遲加載。首先,本系統(tǒng)完全按照軟件工程的瀑布模型進(jìn)行開(kāi)發(fā),雖然缺少部分開(kāi)發(fā)文檔,但本論文則是按照需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),軟件的運(yùn)行和測(cè)試等的結(jié)構(gòu)進(jìn)行安排的。即時(shí)通訊服務(wù)器是數(shù)據(jù)中心,它是客戶活動(dòng)的中介,需要同時(shí)應(yīng)對(duì)眾多客戶的請(qǐng)求。后來(lái)也在網(wǎng)上找到一些setBounds類(lèi),雖然調(diào)用起來(lái)比較麻煩,但是熟悉后也覺(jué)得不是那么難。再次向于老師獻(xiàn)上誠(chéng)摯的謝意。客戶端:CPU PIII ,內(nèi)存:256M以上。服務(wù)器啟動(dòng)后將顯示服務(wù)器地址和端口號(hào)。下來(lái)進(jìn)行一些設(shè)置。path屬性是本來(lái)存在的。其值為“.。先打開(kāi)“開(kāi)始”“運(yùn)行”,打入“cmd”,進(jìn)入dos系統(tǒng)界面。附錄3:服務(wù)器端安裝及使用首先,將系統(tǒng)存放到C:\CHAT目錄下;然后,在安裝完JDK后,對(duì)系統(tǒng)進(jìn)行配置,注要是將path路徑制定到chat中的存儲(chǔ)路徑;最后:“開(kāi)始”“運(yùn)行”,打入“cmd”,進(jìn)入dos系統(tǒng)界面。保存聊天記錄:點(diǎn)擊“保存”,則將聊天信息保存在客戶端中;用戶退出:點(diǎn)擊“退出”。附錄4:客服端安裝附錄5:使用手冊(cè) 服務(wù)器端安裝服務(wù)器,并運(yùn)行服務(wù)器; 客戶端安裝客戶端,并運(yùn)行客戶端;用戶注冊(cè):其中要求輸入用戶昵稱(chēng),性別,年齡,用戶密碼以及郵箱,其中,昵稱(chēng)必須唯一值。系統(tǒng)會(huì)顯示java version jdk。%java_home%\lib\ ()”,與相同“%java_home%有相同意思” 。首先點(diǎn)“新建”,然后在變量名寫(xiě)上java_home,顧名其意該變量的含義就是java的安裝路徑,呵呵,然后在變量值寫(xiě)入剛才安裝的路徑“C:\”;其次在系統(tǒng)變量里面找到path,然后點(diǎn)編輯,path變量的含義就是系統(tǒng)在任何路徑下都可以識(shí)別java命令,則變量值為“%java_home%\bin。打開(kāi)屬性。附錄2:JDK安裝及使用選擇好安裝路徑??蛻舳耍翰僮飨到y(tǒng)Win9Win2000、Win200WinXP。感謝06級(jí)2班的全體成員,在這個(gè)大家庭中使我學(xué)會(huì)了寬容,忍讓?zhuān)瑘F(tuán)結(jié)與互助。于老師總是在百忙之中抽出時(shí)間來(lái)為我們解答論文設(shè)計(jì)過(guò)程中的疑惑。 致謝為期一個(gè)學(xué)期的畢業(yè)論文(設(shè)計(jì))已接近尾聲了,我的四年大學(xué)生涯也即將圈上一個(gè)句號(hào)。最后,在編寫(xiě)這個(gè)聊天程序時(shí)遇到許許多多的問(wèn)題,比如JAVA的圖形化界面如何編寫(xiě),該怎樣布局。服務(wù)器在C/S模型中處于一個(gè)中心地位。當(dāng)然,該課題討論的即時(shí)通訊系統(tǒng)是定位于內(nèi)部局域網(wǎng),供班級(jí)內(nèi)部人員使用的通訊系統(tǒng)。 數(shù)據(jù)庫(kù)設(shè)計(jì)??梢允褂?ObjectInputStream 讀?。ㄖ貥?gòu))對(duì)象。 = strLoginName。(2)信息輸出本即時(shí)聊天系統(tǒng)的信息輸出原理是將所有輸入信息通過(guò)socket類(lèi)向服務(wù)器發(fā)送,然后直接從服務(wù)器中突出信息。在上文中,我們講到了catch有拋出異常的作用,而try…catch…也是具有相同的功能,try 塊塊是需要捕獲異常的,因?yàn)槲募锌赡懿淮嬖?,?huì)導(dǎo)致程序崩潰,所以直接捕獲,也可以直接throws 出去,讓調(diào)用該方法的方法去捕獲,從而使程序能夠正常進(jìn)行。 (chatobj)。 =(())。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1