999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于JAVA的仿QQ聊天系統(tǒng)的設(shè)計(jì)

2013-05-14 11:34:12張師毅
關(guān)鍵詞:用戶功能信息

李 丹 ,張師毅

(1.溫州醫(yī)科大學(xué)附屬眼視光醫(yī)院 信息中心,浙江 溫州325027;2.廈門大學(xué) 軟件學(xué)院,福建 廈門361005)

隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)聊天工具已經(jīng)成為人們?nèi)粘=涣鞯囊环N重要工具。它通信速度快,成本低,更重要的是方便人們信息的交流和資料的傳遞,所以開發(fā)一個(gè)易于操作并擁有友好界面的聊天工具可以較好地解決現(xiàn)實(shí)生活中通信費(fèi)用高昂以及電話的單線程通信等問題[1]。QQ聊天系統(tǒng)是一款基于互聯(lián)網(wǎng)的即時(shí)通信系統(tǒng),它允許人們利用英特網(wǎng)技術(shù)實(shí)時(shí)地傳送信息,并且能讓用戶選擇性地接受或拒絕其他用戶的信息。由于QQ有著出色的通信性能并且其用戶普及度較高,因此本課題在模仿QQ的前提下,設(shè)計(jì)了一款具有聊天功能及其他附加功能的軟件。

1 系統(tǒng)分析

1.1 需求分析

聊天系統(tǒng)最重要的是服務(wù)器端和客戶端兩個(gè)方面。服務(wù)器端有兩個(gè)主要任務(wù):

(1)服務(wù)器端應(yīng)當(dāng)建立一個(gè)ServerSocket,并且不斷進(jìn)行監(jiān)聽,判斷是否有客戶端連接請求或斷開連接。

(2)服務(wù)器端應(yīng)當(dāng)是一個(gè)信息發(fā)送中心,所有客戶端的信息都傳到服務(wù)器端,由服務(wù)器端根據(jù)要求分發(fā)信息給客戶端。

客戶端要完成的工作:

(1)與服務(wù)器端建立通信通道,向服務(wù)器端發(fā)送信息。

(2)接收來自服務(wù)器的應(yīng)答信息。

解決了上述的4個(gè)問題,也就完成了聊天系統(tǒng)的核心任務(wù)。

1.2 功能分析

1.2.1 服務(wù)器端功能

服務(wù)器管理員具有開啟服務(wù)、關(guān)閉服務(wù)、配置服務(wù)器等功能。具體功能圖如圖1所示。

圖1 服務(wù)器管理端功能圖

1.2.2 客戶端功能

客戶端用戶具有登錄、實(shí)時(shí)聊天、發(fā)送抖動(dòng)窗口、禁止抖動(dòng)、保存消息記錄、傳送文件、鏈接游戲等功能。具體功能圖如圖2所示。

圖2 客戶端用戶功能圖

1.3 開發(fā)環(huán)境工具

基于JAVA語言的聊天系統(tǒng)主要運(yùn)用JAVA語言與Socket類[2-3]結(jié)合進(jìn)行開發(fā)。在開發(fā)過程中的主要環(huán)境包括:

(1)服務(wù)器端:Windows平臺上首先有 JAVA的jdk環(huán)境,一般采用jdk1.6,此外需要配置相應(yīng)的path、classpath環(huán)境變量,并添加運(yùn)行所需要的各種jar包,本系統(tǒng)開發(fā)的工具為Eclipse10.0。

(2)客戶端:滿足 JAVA的 jdk環(huán)境,主要采用 jdk1.6。

(3)本次設(shè)計(jì)主要用到的類:java.net包中的 Socket類、java.swing包中的類、java.awt包中的類以及java.util包中的集合類。

2 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2.1 系統(tǒng)設(shè)計(jì)要點(diǎn)

聊天系統(tǒng)的設(shè)計(jì)主要是提供滿足用戶雙方直接進(jìn)行實(shí)時(shí)聊天的服務(wù),在設(shè)計(jì)聊天系統(tǒng)的過程中,必須要考慮好以下幾個(gè)設(shè)計(jì)要點(diǎn):

(1)實(shí)現(xiàn)思想

在Internet上的聊天程序一般都是以服務(wù)器提供服務(wù)端連接響應(yīng),用戶通過客戶端程序登錄到特定服務(wù)器,即可與登錄在同一服務(wù)器上的用戶進(jìn)行交流,這是一個(gè)面向連接的通信過程。因此,要在TCP/IP環(huán)境下[4-5],實(shí)現(xiàn)服務(wù)器端和客戶端兩部分程序。

(2)服務(wù)器端工作流程

服務(wù)器端通過socket()系統(tǒng)創(chuàng)建一個(gè)ServerSocket來對客戶端進(jìn)行接收,并與指定的本地端口綁定bind(),就可以在端口進(jìn)行監(jiān)聽 listen()。Map<String,socket>用以存儲用戶姓名和對應(yīng)的Socket。通過ChatRoomServerThread線程類來處理不同請求。如果有客戶端連接請求,則給出一個(gè)相應(yīng)的Socket,將客戶端地址賦給這個(gè)Socket。登錄成功的用戶就可以在服務(wù)器上聊天。

(3)客戶端工作流程

客戶端程序相對簡單,只需要建立一個(gè)Socket與服務(wù)器端連接,成功后通過這個(gè)Socket來發(fā)送和接收數(shù)據(jù)即可。

2.2 服務(wù)器端程序模塊

服務(wù)器與客戶端間通過套接口Socket(TCP)連接。JAVA API為處理套接口的通信提供了一個(gè)相關(guān)類java.net.Socket,因此在JAVA中使用套接口相對簡單,編寫網(wǎng)絡(luò)應(yīng)用程序也相對比較容易。服務(wù)器端采用多線程來滿足多用戶的請求,并在服務(wù)器端通過創(chuàng)建一個(gè)Server-Socket對象來監(jiān)聽來自客戶端的連接請求,默認(rèn)端口自定5044,繼而無限循環(huán)調(diào)用 accept()方法接受客戶程序的連接。

服務(wù)器端程序框圖如圖3所示,服務(wù)器開啟主要步驟為:

(1)制造 ServerSocket,對客戶端進(jìn)行接收

(2)啟動(dòng)服務(wù)器,循環(huán)接收消息

(3)線程類處理各種請求,在 run()方法中依據(jù)不同類型請求進(jìn)行各種操作

2.3 客戶器端程序模塊

客戶端通過Socket與服務(wù)器建立連接。服務(wù)器與客戶端通過構(gòu)造器ObjectInputStream與ObjectOutputStream建立輸入/輸出流,然后雙方通過該輸入/輸出流相互傳遞信息。一旦收到客戶端的連接請求,服務(wù)器accept()方法立即返回一個(gè)新建的Socket對象。客戶端繼而向服務(wù)器發(fā)送消息,比如文件傳輸?shù)龋?wù)器收到來自客戶的請求后,針對不同的消息處理不同的請求。客戶端通過多線程類ReadMessageThread處理用戶不同類型的請求。其程序框圖如圖4所示。

圖3 服務(wù)器端程序框圖

系統(tǒng)除了以上功能之外,還有一些附加功能模塊,可以通過菜單欄進(jìn)行選擇,包括設(shè)置聊天窗口界面、單機(jī)游戲(掃雷)、便利記事本、文件上傳等。

本次設(shè)計(jì)的仿QQ聊天軟件系統(tǒng)運(yùn)行穩(wěn)定,用戶通過客戶端軟件可實(shí)現(xiàn)聊天的基本功能,并添加了一些附加功能。但還存在著一些不足之處,比如用戶管理不夠全面,只能顯示在線用戶;另外系統(tǒng)未與數(shù)據(jù)庫進(jìn)行連接。因此系統(tǒng)在投入使用之前還需要不斷地完善。

[1]龐怡,許洪光,姜媛.即時(shí)通訊工具現(xiàn)狀及發(fā)展趨勢分析[J].科技情報(bào)開發(fā)與經(jīng)濟(jì),2006,16(16):169-170.

圖4 客戶端程序框圖

[2]童銘.基于Socket的多用戶通信框架及實(shí)現(xiàn)[J].四川大學(xué)學(xué)報(bào)(自然科學(xué)版),2006,43(3):702-705.

[3]李峰.利用流式Socket編程實(shí)現(xiàn)Window與Linux的通信[J].微計(jì)算機(jī)信息,2006,22(3):112-113.

[4]楊延雙,張建標(biāo),王全明.TCP/IP協(xié)議分析及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2007.

[5]李素俠,段友祥.嵌入式TCP_IP協(xié)議的分析與研究[J].微計(jì)算機(jī)信息,2005(20):20-20.

猜你喜歡
用戶功能信息
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
關(guān)于非首都功能疏解的幾點(diǎn)思考
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
辨證施護(hù)在輕度認(rèn)知功能損害中的應(yīng)用
主站蜘蛛池模板: 亚洲熟妇AV日韩熟妇在线| 国产美女精品一区二区| 欧美69视频在线| 凹凸精品免费精品视频| 午夜一区二区三区| 国外欧美一区另类中文字幕| 久久中文字幕不卡一二区| 精品国产美女福到在线直播| 日韩av资源在线| 午夜少妇精品视频小电影| 亚洲无码高清视频在线观看| 国产成人精品在线1区| 国产成人91精品免费网址在线| 亚洲无码A视频在线| 精品久久久久久久久久久| 欧美日韩在线国产| 九九久久精品免费观看| 亚洲精品中文字幕午夜| 夜夜操国产| 欧美伊人色综合久久天天| 国产超碰在线观看| 亚洲精品色AV无码看| 日韩专区第一页| 中文字幕精品一区二区三区视频 | 精久久久久无码区中文字幕| 亚洲精品成人片在线播放| 88av在线看| 2022国产无码在线| 国产白浆视频| 国产欧美精品专区一区二区| 国产精品亚洲片在线va| 国产精品福利尤物youwu| 国产女人在线视频| 色香蕉影院| 欧洲av毛片| 亚洲国产天堂久久综合226114| 91国内外精品自在线播放| 国产在线拍偷自揄拍精品| 亚洲无码久久久久| 国产精品久久自在自线观看| 中国特黄美女一级视频| 2021国产精品自产拍在线| 亚洲欧美另类视频| 蝴蝶伊人久久中文娱乐网| 久久综合AV免费观看| 国产无码制服丝袜| 99这里只有精品6| 国产日韩av在线播放| 人妻少妇乱子伦精品无码专区毛片| 国产簧片免费在线播放| 日韩欧美亚洲国产成人综合| 亚洲小视频网站| 亚洲综合亚洲国产尤物| 免费午夜无码18禁无码影院| 国产大片喷水在线在线视频| 国产成人啪视频一区二区三区| 久久这里只有精品23| 午夜福利亚洲精品| 久久永久免费人妻精品| 91精品国产91久久久久久三级| 狠狠综合久久久久综| 少妇精品久久久一区二区三区| 日韩欧美高清视频| 亚洲无码A视频在线| 免费A级毛片无码无遮挡| 日韩在线播放中文字幕| 四虎影视无码永久免费观看| 一区二区三区国产| 欧美成人二区| 精品伊人久久久香线蕉| 国产二级毛片| 国产精品久久久久无码网站| 中文字幕伦视频| 99久视频| 亚洲精品动漫| 成人免费黄色小视频| 国产视频入口| 喷潮白浆直流在线播放| 伊人91视频| 91久久国产综合精品女同我| 亚洲成a人片77777在线播放| 成人精品在线观看|