【文章內(nèi)容簡(jiǎn)介】
數(shù)3加入分組的用戶的iduserid整數(shù)以上各表創(chuàng)建的代碼如下:1)創(chuàng)建用戶表create table qquser(number primary key,account number unique,nickname varchar(100),sign varchar(500),sex varchar(10), varchar(100),head varchar(200))。2)創(chuàng)建分組表create table qqperson_Group(id number primary key,userid references qquser(id),name varchar(100))。3)創(chuàng)建群表create table qqpublic_group(id number primary key,userid number references qquser(id),name varchar(100),sign varchar(800))。 4)創(chuàng)建消息表create table qqmessage(id number primary key,account_from number,account_to number,content varchar(1000))。5)創(chuàng)建用戶與群的中間表create qquser_publicgroup (id number primary key,groupid number references qqpublic_group(id) ,userid references qquser(id)。)。6)創(chuàng)建用戶與分組的中間表create qquser_persongroup(id number primary key,groupid number references qqpublic_group(id) ,userid references qquser(id))。7)為用戶表插入數(shù)據(jù)insert into qquser values(1,1,39。long39。,39。I39。m long39。,39。male39。,39。helongyang@39。,39。39。)。insert into qquser values(2,2,39。a39。,39。aa39。,39。male39。,39。a@39。,39。39。)。insert into qquser values(3,3,39。b39。,39。bb39。,39。male39。,39。a@39。,39。39。)。insert into qquser values(4,4,39。c39。,39。cc39。,39。male39。,39。a@39。,39。39。)。insert into qquser values(5,5,39。d39。,39。dd39。,39。male39。,39。a@39。,39。39。)。 8)為分組表和群表插入數(shù)據(jù)insert into qqperson_group values(1,1,39。my friend39。)。into qqpublic_group values(1,1,39。ha ha39。,39。my new group39。)。9)為用戶與群中間表插入數(shù)據(jù)insert into qqperson_group(1,1,1)。insert into qqperson_group(1,1,2)。insert into qqperson_group(1,1,3)。insert into qqperson_group(1,1,4)。insert into qqperson_group(1,1,5)。10)為用戶與分組中間表加入數(shù)據(jù)insert into qqpublic_group(1,1,1)。insert into qqpublic_group(1,1,2)。insert into qqpublic_group(1,1,3)。 into qqpublic_group(1,1,4)。insert into qqpublic_group(1,1,5)。圖32系統(tǒng)類圖Socket:非自定義類。Thread: 非自定義類。Client:負(fù)責(zé)具體發(fā)送和接收數(shù)據(jù)。FromServerListen:監(jiān)聽(tīng)服務(wù)器是否在發(fā)送數(shù)據(jù)。MainFrame系統(tǒng)的主界面(包括用戶列表等)。UserInfo包括用戶的好友分組信息和群信息。UserClass包括用戶的個(gè)人信息,如ID、用戶名等。4. 詳細(xì)設(shè)計(jì)及實(shí)現(xiàn) 1)登陸界面 本界面需要填寫(xiě)的有兩個(gè),一個(gè)是用戶賬號(hào),另一個(gè)是用戶密碼。在客戶端,用戶輸入其號(hào)碼和密碼,然后建立與服務(wù)器的連接,告訴服務(wù)器我要登錄,服務(wù)器收到后,開(kāi)始通過(guò)Jdbc方式讀取數(shù)據(jù)庫(kù),然后與用戶輸入的信息比較,否則返回錯(cuò)誤,如果客戶收到成功信息就打開(kāi)主窗口,否則提示出錯(cuò)。如果成功,便打開(kāi)主程序窗口。然后客戶向服務(wù)器請(qǐng)求讀取好友名單,服務(wù)器收到該請(qǐng)求,開(kāi)始讀取數(shù)據(jù)庫(kù)中的friend表,得到好友的號(hào)碼后,再在好友表中讀取好友資料,然后向客戶端發(fā)送這些信息,客戶收到后就在主窗口顯示好友,并且建立幾個(gè)Vector用以存儲(chǔ)好友的信息。圖41 登陸界面圖2)注冊(cè)界面本界面要填寫(xiě)的項(xiàng)目包括:用戶昵稱,密碼,郵件地址,個(gè)性簽名。需要選擇的項(xiàng)目包括:性別,頭像。本界面主要負(fù)責(zé)將用戶的信息包裝成一個(gè)UserClass對(duì)象。注冊(cè)按鈕一旦被點(diǎn)擊,就會(huì)試圖創(chuàng)建一個(gè)與服務(wù)器端的連接。連接創(chuàng)建成功就會(huì)將填寫(xiě)的信息發(fā)送到服務(wù)器端。如果服務(wù)器寫(xiě)入數(shù)據(jù)庫(kù)成功,就回返回一個(gè)賬號(hào)。使用這個(gè)賬號(hào),用戶可以登陸到系統(tǒng)中。圖42 注冊(cè)界面圖3)主界面主界面是系統(tǒng)的核心部分。它可以列出所有好友和客戶所有加入的群,也可以提供共享文件和文件下載功能。如果用戶服務(wù)雙擊好友分組或群,好友列表或群成員列表將會(huì)顯示出來(lái)。雙擊一個(gè)好友,可以與他進(jìn)行私聊。雙擊一個(gè)群成員,可以與群里的所有成員對(duì)話。本界面還提供了以下右鍵菜單:添加好友分組、查找好友并加為好友、查找群并加為群、創(chuàng)建群、移動(dòng)好友到其它分組、查看好友資料、查看群資料。 圖43 系統(tǒng)主要界面圖4)個(gè)人資料界面該界面主要顯示某個(gè)用戶信息,包括用戶的賬號(hào),昵稱,性別,個(gè)性簽名,用戶等級(jí)等。本界面還提供了一個(gè)“加為好友”按鈕,如果點(diǎn)擊它,此人將會(huì)被加為用戶的好友。默認(rèn)的是加到第一個(gè)好友列表,不過(guò)也可以移動(dòng)其它好友分組。圖44 查看好友資料圖5)文件傳輸服務(wù)器端界面該界面使用的步驟為:第一步:設(shè)置好服務(wù)器的IP,端口。IP一定要是本機(jī)的IP,如果是單機(jī)測(cè)試,IP可以填寫(xiě)“”。端口號(hào)盡量不要小于2000,小于兩千的端口可能被系統(tǒng)占用。設(shè)置完后點(diǎn)擊“確定”按鈕。第二步:添加共享文件。單擊“添加文件共享”按鈕,將需要共享的文件或文件夾添加到共享列表中。第三步:點(diǎn)擊“啟動(dòng)文件發(fā)送服務(wù)”。第四步:如果共享文件完畢,需要點(diǎn)擊“退出”。圖45 文件傳送服務(wù)器6)文件傳輸客戶端界面使用文件傳輸?shù)目蛻舳艘_配置好服務(wù)器的IP和端口號(hào),以及下載好的文件的存放目錄。如果其中之一配置不好,文件下載將會(huì)失敗。設(shè)置好以后,點(diǎn)擊“連接”按鈕,如果配置正確,這時(shí)將會(huì)看到服務(wù)器共享的文件。目前不能支持文件夾下載和多文件下載,當(dāng)看到一個(gè)文件以后,可以雙擊該文件夾并查看文件夾里面的文件。圖46 文件傳送客戶端7)私聊界面 本界面主要用來(lái)顯示兩個(gè)人的對(duì)話信息以及發(fā)送信息。發(fā)送的信息可以設(shè)置字體,大小,字體顏色。也可以發(fā)送一個(gè)表情。圖47私聊界面圖8)群聊界面本界面主要用來(lái)顯示多人的對(duì)話信息以及發(fā)送信息。發(fā)送的信息可以設(shè)置字體,大小,字體顏色。也可以發(fā)送一個(gè)表情。右邊顯示的是群公告,可以用來(lái)公布一些必要的信息。圖48群聊天界面Number(賬號(hào))輸入的必須是整型,它是一個(gè)用戶