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

基于JAVA的仿QQ聊天系統的設計

2013-05-14 11:34:12張師毅
網絡安全與數據管理 2013年24期
關鍵詞:用戶功能信息

李 丹 ,張師毅

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

隨著計算機網絡技術的發展,網絡聊天工具已經成為人們日常交流的一種重要工具。它通信速度快,成本低,更重要的是方便人們信息的交流和資料的傳遞,所以開發一個易于操作并擁有友好界面的聊天工具可以較好地解決現實生活中通信費用高昂以及電話的單線程通信等問題[1]。QQ聊天系統是一款基于互聯網的即時通信系統,它允許人們利用英特網技術實時地傳送信息,并且能讓用戶選擇性地接受或拒絕其他用戶的信息。由于QQ有著出色的通信性能并且其用戶普及度較高,因此本課題在模仿QQ的前提下,設計了一款具有聊天功能及其他附加功能的軟件。

1 系統分析

1.1 需求分析

聊天系統最重要的是服務器端和客戶端兩個方面。服務器端有兩個主要任務:

(1)服務器端應當建立一個ServerSocket,并且不斷進行監聽,判斷是否有客戶端連接請求或斷開連接。

(2)服務器端應當是一個信息發送中心,所有客戶端的信息都傳到服務器端,由服務器端根據要求分發信息給客戶端。

客戶端要完成的工作:

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

(2)接收來自服務器的應答信息。

解決了上述的4個問題,也就完成了聊天系統的核心任務。

1.2 功能分析

1.2.1 服務器端功能

服務器管理員具有開啟服務、關閉服務、配置服務器等功能。具體功能圖如圖1所示。

圖1 服務器管理端功能圖

1.2.2 客戶端功能

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

圖2 客戶端用戶功能圖

1.3 開發環境工具

基于JAVA語言的聊天系統主要運用JAVA語言與Socket類[2-3]結合進行開發。在開發過程中的主要環境包括:

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

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

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

2 系統設計與實現

2.1 系統設計要點

聊天系統的設計主要是提供滿足用戶雙方直接進行實時聊天的服務,在設計聊天系統的過程中,必須要考慮好以下幾個設計要點:

(1)實現思想

在Internet上的聊天程序一般都是以服務器提供服務端連接響應,用戶通過客戶端程序登錄到特定服務器,即可與登錄在同一服務器上的用戶進行交流,這是一個面向連接的通信過程。因此,要在TCP/IP環境下[4-5],實現服務器端和客戶端兩部分程序。

(2)服務器端工作流程

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

(3)客戶端工作流程

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

2.2 服務器端程序模塊

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

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

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

(2)啟動服務器,循環接收消息

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

2.3 客戶器端程序模塊

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

圖3 服務器端程序框圖

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

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

[1]龐怡,許洪光,姜媛.即時通訊工具現狀及發展趨勢分析[J].科技情報開發與經濟,2006,16(16):169-170.

圖4 客戶端程序框圖

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

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

[4]楊延雙,張建標,王全明.TCP/IP協議分析及應用[M].北京:機械工業出版社,2007.

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

猜你喜歡
用戶功能信息
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
關于非首都功能疏解的幾點思考
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
中西醫結合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應用
主站蜘蛛池模板: 国产丝袜丝视频在线观看| 91福利片| 人禽伦免费交视频网页播放| 波多野结衣视频网站| 高清大学生毛片一级| 欧美午夜一区| 中文字幕在线日韩91| 另类欧美日韩| av手机版在线播放| 欧美国产日产一区二区| 日本一区二区三区精品AⅤ| 在线毛片免费| 日本a级免费| 2020精品极品国产色在线观看| 久久综合国产乱子免费| 美女被躁出白浆视频播放| 麻豆精品视频在线原创| 美女被躁出白浆视频播放| 国内精品久久久久久久久久影视| 亚洲成人网在线播放| 最新日本中文字幕| 欧美伦理一区| 欧美日韩亚洲国产主播第一区| 久久久久青草线综合超碰| 国产精品v欧美| 又猛又黄又爽无遮挡的视频网站| 中文字幕无码av专区久久| 亚洲a级在线观看| 亚洲国产系列| 精品国产乱码久久久久久一区二区| 午夜色综合| 91青青草视频在线观看的| 欧美色99| 久久亚洲欧美综合| 亚洲人成影院午夜网站| 四虎国产精品永久一区| 女人爽到高潮免费视频大全| 亚洲综合天堂网| 国产成人免费观看在线视频| 精品99在线观看| 黄色免费在线网址| 国产jizz| 看国产一级毛片| 蜜桃视频一区二区三区| 国产精品99一区不卡| 久久综合九色综合97网| 亚洲成人一区二区三区| 亚洲中文在线看视频一区| 亚洲AV色香蕉一区二区| 亚洲人成成无码网WWW| 亚洲成A人V欧美综合| 制服丝袜无码每日更新| 国产乱人伦AV在线A| 美女高潮全身流白浆福利区| 呦女亚洲一区精品| 久久这里只有精品免费| 婷婷六月天激情| 伊人无码视屏| 国产欧美精品专区一区二区| 亚洲美女高潮久久久久久久| 亚洲视频无码| 国产精品人莉莉成在线播放| 亚洲成人动漫在线| 国产69精品久久久久孕妇大杂乱| 国产在线一区视频| 日本高清有码人妻| 国产日韩欧美在线播放| 国产精品自在自线免费观看| 孕妇高潮太爽了在线观看免费| 一级不卡毛片| 亚洲毛片在线看| 视频一区亚洲| 国产精品视频导航| 午夜电影在线观看国产1区| 影音先锋亚洲无码| a亚洲视频| 中文字幕欧美成人免费| 久久99国产综合精品1| 青青青伊人色综合久久| 国产亚洲一区二区三区在线| 97在线观看视频免费| 女人18毛片水真多国产|