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

正文內(nèi)容

基于net的在線聊天系統(tǒng)—紀連文(編輯修改稿)

2025-07-16 16:09 本頁面
 

【文章內(nèi)容簡介】 Socket連接,更新在線用戶Hash表以及在線用戶的在線好友列表??蛻魴C/服務(wù)器模式在操作過程中采取的是主動請示方式,首先服務(wù)器方要先啟動,并根據(jù)請示提供相應(yīng)服務(wù):(過程如下)服務(wù)器(1)、打開一通信端口并告知本地主機,它愿意在某一個公認地址上接收客戶請求。(2)、等待客戶請求到達該端口。(3)、接收到重復(fù)服務(wù)請求,處理該請求并發(fā)送應(yīng)答信號。(4)、返回第二步,等待另一客戶請求。(5)、關(guān)閉服務(wù)器??蛻舴剑海?)、打開一通信通道,并連接到服務(wù)器所在主機的特定端口。(2)、向服務(wù)器發(fā)送服務(wù)請求報文,等待并接收應(yīng)答;繼續(xù)提出請求……(3)、請求結(jié)束后關(guān)閉通信通道并終止。:連接服務(wù)器發(fā)出消息請求入口監(jiān)聽端口入口封裝并發(fā)送消息到服務(wù)器在聊天去顯示客戶端消息還是服務(wù)器端消息選擇用戶發(fā)送離線消息服務(wù)器更新消息客戶端消息入口客戶端系統(tǒng)流圖更新在線用戶列表監(jiān)聽端口提取句柄報文目的地址轉(zhuǎn)發(fā)目的地址監(jiān)聽端口配置服務(wù)器判斷消息上線或離線請求聊天信息操作服務(wù)器端程序流程圖圖客戶端客戶端A客戶端B服務(wù)器端封裝發(fā)送拆封、提取目的信息并轉(zhuǎn)發(fā)拆封、提取操作消息和目的信息轉(zhuǎn)發(fā)地址服務(wù)器端客戶端交互流程圖圖 系統(tǒng)分布流程圖第6章 系統(tǒng)詳細設(shè)計與實現(xiàn)第5章 數(shù)據(jù)庫設(shè)計 概述數(shù)據(jù)庫設(shè)計是指根據(jù)用戶需求研制數(shù)據(jù)庫結(jié)構(gòu)并應(yīng)用數(shù)據(jù)庫的過程。一般,數(shù)據(jù)庫的設(shè)計過程大致可分數(shù)據(jù)庫設(shè)計為5個步驟:需求分析:調(diào)查和分析用戶的業(yè)務(wù)活動和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們在業(yè)務(wù)活動中交流的情況,確定用戶對數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約。概念設(shè)計:對用戶要求描述的現(xiàn)實世界(可能是一個工廠、一個商場或者一個學(xué)校等),通過對其中住處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個概念模型應(yīng)反映現(xiàn)實世界各部門的信息結(jié)構(gòu)、信息流動情況、信息間的互相制約關(guān)系以及各部門對信息儲存、查詢和加工的要求等。所建立的模型應(yīng)避開數(shù)據(jù)庫在計算機上的具體實現(xiàn)細節(jié),用一種抽象的形式表示出來?!∵壿嬙O(shè)計:主要工作是將現(xiàn)實世界的概念數(shù)據(jù)模型設(shè)計成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時,可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計的結(jié)果就是所謂“邏輯數(shù)據(jù)庫”?!∥锢碓O(shè)計:根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機結(jié)構(gòu)的各項物理設(shè)計措施,對具體的應(yīng)用任務(wù)選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設(shè)計的結(jié)果就是所謂“物理數(shù)據(jù)庫”。 驗證設(shè)計:在上述設(shè)計的基礎(chǔ)上,收集數(shù)據(jù)并具體建立一個數(shù)據(jù)庫,運行一些典型的應(yīng)用任務(wù)來驗證數(shù)據(jù)庫設(shè)計的正確性和合理性。一般,一個大型數(shù)據(jù)庫的設(shè)計過程往往需要經(jīng)過多次循環(huán)反復(fù)。當設(shè)計的某步發(fā)現(xiàn)問題時,可能就需要返回到前面去進行修 改。因此,在做上述數(shù)據(jù)庫設(shè)計時就應(yīng)考慮到今后修改設(shè)計的可能性和方便性。 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計是在需求分析的基礎(chǔ)上,設(shè)計出能夠滿足用戶需求的各種實體,以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。這階段可用的工具很多。用的最多的是ER圖(EntityRelation,實體關(guān)系圖),另外還有許多計算機輔助工具(Computer Aided Software Engineering, CASE)可以幫助進行設(shè)計。本系統(tǒng)采用了ER圖的方法進行數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計。ER圖是描述數(shù)據(jù)實體關(guān)系的一種直觀描述工具。這種圖中有:實體:用方框表示,方框內(nèi)為實體的名稱。實體的各種屬性:用橢圓表示,橢圓內(nèi)為屬性名稱。使用線段將其和響應(yīng)的實體連接起來。實體之間的聯(lián)系:用菱形表示,菱形內(nèi)為聯(lián)系的名稱。實體和實體之間的聯(lián)系較多,比較常見的聯(lián)系有l(wèi):1,l:N和M:N這三種。 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)是獨立于實際數(shù)據(jù)模型的信息結(jié)構(gòu),必須將其轉(zhuǎn)化為邏輯結(jié)構(gòu)后才能進行數(shù)據(jù)庫應(yīng)用的設(shè)計。也就是要將概念上的結(jié)構(gòu)轉(zhuǎn)化為數(shù)據(jù)庫系統(tǒng)所支持的實際數(shù)據(jù)模型。第一種轉(zhuǎn)化是將實體轉(zhuǎn)化為關(guān)系表。這種轉(zhuǎn)化較簡單,需要將實體的屬性定義為表的屬性即可。第二種轉(zhuǎn)化是聯(lián)系的轉(zhuǎn)化。即將各個實體之間的聯(lián)系轉(zhuǎn)化為表格之間的關(guān)系,如外部鍵的定義。 用戶信息實體屬性圖在聊天系統(tǒng)中要有聊天的實體,用戶是聊天系統(tǒng)中密不可分的主體部分,因此要創(chuàng)建一用戶信息實體,用來保存用戶登錄賬號、密碼等詳細的信息。用戶信息實體屬性圖,:用戶信息實體用戶頭像圖片用戶昵稱用戶密碼用戶的使用權(quán)限用戶在線時間用戶ID 用戶信息實體ER圖 用戶好友關(guān)系信息實體屬性圖用戶好友關(guān)系是在聊天系統(tǒng)實現(xiàn)的橋梁和標志,是在聊天系統(tǒng)的重要組成部分,這里創(chuàng)建了一個用戶好友關(guān)系信息實體,用來存儲用戶好友關(guān)系的詳細信息。用戶好友關(guān)系信息ER圖,:用戶好友關(guān)系信息實體用戶A的ID關(guān)系名用戶B的ID 用戶關(guān)系信息ER圖 數(shù)據(jù)表設(shè)計系統(tǒng)采用SQL Server 2005的數(shù)據(jù)庫管理 ,建立數(shù)據(jù)庫名為CoolBearServerDB,數(shù)據(jù)庫中存放的表有UserDT (用戶登錄信息表)、FriendsRelationDT (用戶好友關(guān)系詳細信息表)。數(shù)據(jù)庫各表詳細結(jié)構(gòu)如下: UserDT (用戶登錄信息表)列名類型主鍵非空外鍵注釋CoolBear_UserIDint是是酷熊號CoolBear_UserNamevarchar(10)是酷熊昵稱CoolBear_UserHeadImagvarchar(25)是用戶頭像圖片CoolBear_UserPasswordvarchar(25)是酷熊密碼CoolBear_UserOnlineTimeint是用戶在線時間CoolBear_UserLogo lint是用戶權(quán)限 CoolBear_FriendsRelationID (用戶好友關(guān)系信息表)列名類型主鍵非空 外鍵注釋CoolBear_FriendsRelationIDint 是是 好友關(guān)系名CoolBear_FriendsRelationFriendID1CoolBear_FriendsRelationFriendID2intint 是是 用戶1酷熊號用戶2酷熊號 創(chuàng)建數(shù)據(jù)的存儲過程下面存儲過程為數(shù)據(jù)庫提供檢索驗證登錄信息,為服務(wù)器端向客戶端提供更新好友列表提供數(shù)據(jù): public static bool ValidateUser(string[] UserMessage) { string sqlstring = select * from UserDT WHERE CoolBear_UserID=@UserID AND CoolBear_UserPassword=@UserPassword。 int coolBearID = Int32.Parse(UserMessage[0])。 string coolBearPw = UserMessage[1]。 SqlConnection conn = new SqlConnection(connString)。 conn.Open()。 SqlCommand scd = new SqlCommand(sqlstring, conn)。 scd.Parameters.AddWithValue(@UserID, coolBearID)。 scd.Parameters.AddWithValue(@UserPassword, coolBearPw)。 SqlDataAdapter sda = new SqlDataAdapter(scd)。 DataTable dt = new DataTable()。 sda.Fill(dt)。 try { scd.ExecuteNonQuery()。 if (dt.Rows.Count0) { return true。 } else { return false。 } } catch (System.Exception ex) { return false。 } finally { sda.Dispose()。 scd.Dispose()。 conn.Close()。 conn.Dispose()。 }}第6章 系統(tǒng)詳細設(shè)計與實現(xiàn)本系統(tǒng)的詳細設(shè)計與實現(xiàn)主要分為通用類的設(shè)計和界面設(shè)計以及事件處理邏輯實現(xiàn)的設(shè)計。本系統(tǒng)中要經(jīng)常對數(shù)據(jù)庫進行添加、刪除、修改等操作.為了避免重復(fù)寫相同的代碼,將對數(shù)據(jù)庫的基本操作封裝到一個類中。這樣每次需要對數(shù)據(jù)庫進行操作的時候,只要直接調(diào)用這個封裝好的類就可以實現(xiàn)對數(shù)據(jù)庫的增加、刪除、修改等操作。系統(tǒng)的實現(xiàn)主要是進行客戶端和服務(wù)器端的通信以及信息的交換:主要的結(jié)構(gòu)是,系統(tǒng)有兩個文件夾分別是:CoolBearServer和CoolBearClient;CoolBearServer包括各個子文件夾,以下是對各文件夾的描述如下:Bin:Bin目錄用來保存項目生成后程序集,在.NET中,編譯是分模塊進行的,編譯整個完成后會合并為一個.DLL或.EXE保存到bin目錄下。Obj:obj目錄是用來保存每個模塊的編譯結(jié)果。Properties:此目錄用來存放程序集的屬性和配置。CoolBearClient包括多個WinForm程序類文件以及各個子文件夾,以下是對各文件夾的描述如下(除去和CoolBearServer中一模一樣的文件夾):Images:用于存放系統(tǒng)使用到得圖片。Resource:此文件夾放置系統(tǒng)使用的嵌入在資源。Music:此文件夾放置系統(tǒng)用到的聲音文件。 系統(tǒng)通用類設(shè)計系統(tǒng)的功能模塊從操作處理上主要是服務(wù)器端模塊。服務(wù)器端模塊包括用戶登錄、用戶注冊、添加好友、刪除好友四部分。主要通過對表UserDT和表FriendsRelationDT的操作來實現(xiàn),封裝在類SqlControl里面。系統(tǒng)通用類設(shè)計如下: 數(shù)據(jù)庫表結(jié)構(gòu)類設(shè)計UserDTClass類對UserDTClass類中,實現(xiàn)UserDT
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1