




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、JISHOUUNIVERSITY專業(yè)課課程論文題題 目:目:局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)作作 者:者:學學 號:號:所屬學院:所屬學院:信息科學與工程學院專業(yè)年級:專業(yè)年級:總總 評評 分:分:完成時間:完成時間:吉首大學信息科學與工程學院吉首大學信息科學與工程學院局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)(吉首大學信息科學與工程學院,湖南 吉首 416000)摘 要在計算機技術飛速發(fā)展的今天,隨著 Internet 的普及和發(fā)展,人們的生活和工作也越來越離不開信息網(wǎng)絡的支持,而聊天室是人們最常見、最直接的網(wǎng)上交流的方式。本論文
2、主要研究一個以網(wǎng)絡交友為主,為廣大用戶提供一個借助網(wǎng)絡進行人際交往的信息平臺。本文所設計的局域網(wǎng)聊天系統(tǒng)是基于開放的 WEB 服務器應用程序開發(fā)設計的,其主要特征是能動態(tài)完成信息的傳遞且具有高效的交互性,有效的處理客戶請求且具有更簡單、更方便的數(shù)據(jù)庫訪問方法,易于維護和更新。這種技術程序由JAVA、HTML、數(shù)據(jù)庫和腳本語言組合而成。主要功能模塊包括:用戶登錄、注冊部分;編寫和顯示聊天記錄部分;管理員管理聊天室的管理部分。聊天系統(tǒng)編寫和顯示聊天記錄部分界面友好,提供動作、表情、公聊或私聊等操作;管理部分可以刪除不守規(guī)矩的注冊用戶、踢出在線用戶以及刪除某些不合時宜的聊天記錄等、根據(jù)數(shù)據(jù)庫需求分析
3、,在 ACCESS 中定義 3 個表:用 user 表來存放注冊用戶信息、用activetable 表來存放當前在線用戶信息以及用 message 表來存放聊天記錄。本系統(tǒng)相比較其他信息交流平臺具有開發(fā)方便、快捷,占用資源少,維護方便等優(yōu)點?!娟P鍵詞】Java,數(shù)據(jù)庫,腳本語言,聊天系局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)LAN of multi-function chat room design and ImplementationRaotao (College of Information Science and Engineering,Jishou University,Jishou,Hun
4、an 416000)AbstractThe rapid development of computer technology today, with the popularity and development of Internet, peoples work and life has become increasingly inseparable from the support of the information network, and the chat room is one of the most common, the most direct online communicat
5、ion mode.In this thesis, a network of friends, for the vast number of users with a network of have the aid of interpersonal information platform.The design of the LAN chat system is based on an open WEB server application development and design, its main characteristic is to complete the information
6、 transmission dynamically with high interactivity, effective customer request and has a more simple, more convenient database accessing method, easy maintenance and update.The technical program by JAVA, HTML, database and script language and combination.The main function modules include: user login,
7、 registration section; write and display chat recording part; the administrator manage the chat room management section.Chat system to prepare and display chat interface friendly, with action, expression, the public chat or operation; management can remove the unruly registered user, play online use
8、r and delete certain be inopportune or inappropriate chat records, according to the database needs analysis, defined in ACCESS 3: user table table for registered users of information, using activetable table to store the current online user information and the use of message table to store the chat
9、record.This system is compared with other information exchange platform with the development of convenient, fast, less resource occupation, easy maintenance and other advantages.Key words:JAVA; data capture; information analysis ; Winpcap;Jpcap 局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)目 錄第一章引言 .11.1 課題背景及意義 .11.2 課題研究現(xiàn)狀 .1
10、1.3 研究內(nèi)容 .21.4 論文組織方式 .2第二章關鍵技術 .32.1 JAVA 概述 .32.2 套接字 .32.2.1 Socket 簡介.32.2.2 Socket 工作過程.42.3 TCP 三次握手 .4第三章需求分析 .53.1 功能需求 .53.2 性能要求 .5處理數(shù)據(jù)能力 .5時間特性 .53.2.3 數(shù)據(jù)庫需求 .53.2.5 其他標準的約束 .53.2.6 外部接口需求 .63.2.7 通信接口 .7第四章概要設計 .84.1 體系結(jié)構(gòu)設計 .84.1.1 復審數(shù)據(jù)流、控制流 .8軟件體系結(jié)構(gòu) .84.2 模塊設計 .94.2.1 用戶掃描系統(tǒng)模塊 .94.2.2 在
11、線交流系統(tǒng)模塊 .104.2.3 系統(tǒng)配置系統(tǒng) .11第五章詳細設計 .145.1 用戶登錄模塊 .14局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)5.2 用戶列表模塊 .155.3 文本聊天模塊 .17第六章測試及實現(xiàn)結(jié)果 .216.1 測試環(huán)境 .216.2 測試過程 .21用戶登錄及用戶列表 .216.2.2 文本聊天 .226.2.3 文件傳輸 .25結(jié)束語.27參考文獻.28局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)1第一章第一章引言引言1.1 課題背景及意義課題背景及意義在網(wǎng)絡越來越發(fā)達的今天,人們對網(wǎng)絡的依賴越來越多,各種網(wǎng)絡應用層出不窮,網(wǎng)絡編程越來越受大廣大程序員的重視。網(wǎng)絡編程的目的就是指直
12、接或間接地通過網(wǎng)絡協(xié)議與其他計算機進行通訊。網(wǎng)絡編程中有兩個主要的問題,一個是如何準確的定位網(wǎng)絡上一臺或多臺主機,另一個就是找到主機后如何可靠高效的進行數(shù)據(jù)傳輸。在 TCP/IP 協(xié)議中 IP 層主要負責網(wǎng)絡主機的定位,數(shù)據(jù)傳輸?shù)穆酚桑?IP 地址可以唯一地確定Internet 上的一臺主機。而 TCP 層則提供面向應用的可靠的或非可靠的數(shù)據(jù)傳輸機制,這是網(wǎng)絡編程的主要對象,一般不需要關心 IP 層是如何處理數(shù)據(jù)的。目前較為流行的網(wǎng)絡編程模型是客戶機/服務器(C/S)結(jié)構(gòu)。即通信雙方一方作為服務器等待客戶提出請求并予以響應。客戶則在需要服務時向服務器提出申請。服務器一般作為守護進程始終運行,
13、監(jiān)聽網(wǎng)絡端口,一旦有客戶請求,就會啟動一個服務進程來響應該客戶,同時自己繼續(xù)監(jiān)聽服務端口,使后來的客戶也能及時得到服務。網(wǎng)絡聊天是網(wǎng)絡編程的典型應用之一,編寫網(wǎng)絡聊天軟件對于學習網(wǎng)絡編程無疑有著很大的幫助。本小組編寫本軟件,旨在通過軟件的編寫與實現(xiàn),來提高對網(wǎng)絡編程的理解和掌握。1.2 課題研究現(xiàn)狀網(wǎng)絡數(shù)據(jù)捕獲技術是獲取信息的關鍵技術,它通過監(jiān)聽技術,過濾技術獲取原始數(shù)據(jù),根據(jù)TCP/IP分層理論進行層層拆解,提取相關協(xié)議中的信息。本設計主要通過使用Java編寫出了一款簡單的軟件對數(shù)據(jù)包信息進行捕獲,捕獲出所需要的敏感信息,并且將捕獲出來的信息保存起來。Java 是一種可以撰寫跨平臺應用軟件的
14、面向?qū)ο蟮某绦蛟O計語言,是由Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序設計語言和 Java 平臺(即 JavaSE,JavaEE,JavaME)的總稱。Java 技術具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用于個人 PC、數(shù)據(jù)中心、游戲控制臺、科學超級計算機、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專業(yè)社群。在全球云計算和移動互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下,Java 更具備了顯著優(yōu)勢和廣闊前景1。 局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)21.3 研究內(nèi)容網(wǎng)絡編程的目的就是指直接或間接地通過網(wǎng)絡協(xié)議與其他計算機進行通訊。網(wǎng)絡編程中有兩個主要的問題,一個是如
15、何準確的定位網(wǎng)絡上一臺或多臺主機,另一個就是找到主機后如何可靠高效的進行數(shù)據(jù)傳輸。在 TCP/IP 協(xié)議中 IP 層主要負責網(wǎng)絡主機的定位,數(shù)據(jù)傳輸?shù)穆酚?,?IP 地址可以唯一地確定Internet 上的一臺主機。而 TCP 層則提供面向應用的可靠的或非可靠的數(shù)據(jù)傳輸機制,這是網(wǎng)絡編程的主要對象,一般不需要關心 IP 層是如何處理數(shù)據(jù)的。目前較為流行的網(wǎng)絡編程模型是客戶機/服務器(C/S)結(jié)構(gòu)。即通信雙方一方作為服務器等待客戶提出請求并予以響應。客戶則在需要服務時向服務器提出申請。服務器一般作為守護進程始終運行,監(jiān)聽網(wǎng)絡端口,一旦有客戶請求,就會啟動一個服務進程來響應該客戶,同時自己繼續(xù)監(jiān)聽
16、服務端口,使后來的客戶也能及時得到服務。網(wǎng)絡聊天是網(wǎng)絡編程的典型應用之一,編寫網(wǎng)絡聊天軟件對于學習網(wǎng)絡編程無疑有著很大的幫助。本軟件旨在為同一局域網(wǎng)用戶間提供便利的局域網(wǎng)服務,局域網(wǎng)用戶可以通過此聊天軟件在各終端相互發(fā)送聊天信息,同時可以快速傳送文件,方便局域網(wǎng)用戶間的快速有效通信。1.4 論文組織方式 首先,本論文從目前網(wǎng)絡的安全現(xiàn)狀開始,詳細研究了本課題的背景以及意義,由于目前我國已經(jīng)進入了網(wǎng)絡時代,需要使用自己的網(wǎng)絡聊天信息安全系統(tǒng)來保護自己的網(wǎng)絡聊天信息系統(tǒng),尤其是對于秘密性的信息,必須將網(wǎng)絡安全和信息安全放在非常重要的地位。其次,在對本論文的背景有所了解的情況下,對本課題所必須的關鍵
17、技術進行了介紹,包括 java 的概述,套接字,三次握手等。最后,在對所必須得基礎知識有所了解的情況下,按照各模塊的功能,分別詳細介紹了各個功能的實現(xiàn)過程。局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)3第二章第二章關鍵技術關鍵技術2.1 java 概述JAVA 語言有下面一些特點:簡單、面向?qū)ο?、分布式、解釋?zhí)行、魯棒、 安全、體系結(jié)構(gòu)中立、可移植、高性能、多線程以及動態(tài)性。豐富的類庫 JAVA 提供了大量的類以滿足網(wǎng)絡化、多線程、面向?qū)ο笙到y(tǒng)的需要。語言包提供的支持包括字符串處理、多線程處理、數(shù)學函數(shù)處理等,可以用它簡單地實現(xiàn) JAVA 程序的運行平臺。實用程序包提供的支持包括哈希表、堆棧、可變數(shù)組、
18、時間和日期等。輸入輸出包用統(tǒng)一的“流”模型來實現(xiàn)所有格式的 I/O,包括文件系統(tǒng)、網(wǎng)絡、輸入低級網(wǎng)絡包用于實現(xiàn) Socket 編程。抽象圖形用戶接口包實現(xiàn)了不同平臺的計算機的圖形用戶接口部件, 包括窗口、菜單、滾動條、對話框等,使得 JAVA 可以移植到不同平臺的機器。網(wǎng)絡包支持 Internet 的 TCP/IP 協(xié)議,提供了與 Internet 的接口。它支持 URL 連接,WWW 的即時訪問,并且簡化了用戶/服務器模型的程序設計。JAVA 和 C、C+對于變量聲明、參數(shù)傳遞、操作符、流控制等使用了相同的傳統(tǒng),使得熟悉 C、C+的程序員能很方便地進行編程。同時, JAVA 為了實現(xiàn)其簡單、
19、魯棒、安全等特性,也摒棄了 C 和 C+中許多不合理的內(nèi)容。2.2 套接字 Socket 簡介Socket,簡稱套接字,用于實現(xiàn)網(wǎng)絡上客戶和服務器之間的連接。也就是說網(wǎng)絡上兩個或兩個以上雙工方式通信的進程之間總有一個連接,這個連接的端點成為套接字,套接字是在比較低的層次上通信的。具體的說:一個服務器應用程序一般偵聽一個特定的端口等待客戶端的連接請求,當一個連接請求到達時,客戶端和服武器端建立一個通信連接,在連接過程中,客戶端被分配一個本地端口與一個 Socket 建立連接,客戶端通過寫Socket 來通知服務器,以讀 Socket 中的信息,類似的服務器也獲得一個本地端口,它需要一個新的端口號
20、來偵聽原始端口上的其他連接請求。服務器也通過它的本地端口連接一個 Socket,通過讀寫和客戶端通信。局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)4 Socket 工作過程Socket 程序的工作過程:1.建立 Socket 連接:在通信開始之前由通信雙方確認身份,建立一條專用的虛擬連接道。2.數(shù)據(jù)通信:利用虛擬連接通道傳送數(shù)據(jù)信息進行通信。3.關閉:通信結(jié)束時,再將所建的虛擬連接拆除。2.3 TCP 三次握手第一次握手:原主機發(fā)送一個帶有本次連接的序號的請求的一個數(shù)據(jù)幀。第二次握手:目的主機收到請求后,如果同意連接,則發(fā)回一個帶有一個本次連接序號和源端機連接序列號的確認。第三此握手:源端機收到含有兩次
21、初始序列號的應答后,再向目的主機發(fā)送一個帶有兩次連接的序列號的確認。具體過程如下:圖 2.1 三次握手協(xié)議局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)5第三章第三章需求分析需求分析3.1 功能需求做為一個局域網(wǎng)內(nèi)的即時聊天程序,除了基本的聊天功能,文件傳輸也是經(jīng)常用到的功能。本軟件需具有以下幾個功能:1.用戶登錄設立一個服務器,實現(xiàn)多用戶即時通訊;用戶在登錄的同時需輸入一些個性化的信息,以便于各用戶之前的識別。2.文本聊天聊天室功能,即所謂的群聊,聊天內(nèi)容所有人可見;保密聊天功能,即所謂的私聊,聊天內(nèi)容僅聊天雙方可見;用戶可對字體進行設置。3.文件轉(zhuǎn)輸多線程,收發(fā)可同時進行。3.2 性能要求處理數(shù)據(jù)能力
22、時間特性 響應時間:所有的發(fā)送操作響應時間一般不超過 1 秒,大量的信息發(fā)送,呈現(xiàn)應該在 5 秒內(nèi)顯示或者提示相關出錯信息。 更新處理時間:所有提交數(shù)據(jù)一般在 3 秒內(nèi)相應。 數(shù)據(jù)庫需求聊天記錄較多,在需要時能即時存取。相關配置信息,需要時能即時讀取。 設計約束3.2.5 其他標準的約束局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn) 硬件約束 奔騰 4 處理器及以上內(nèi)存:256M 以需求規(guī)格說明書 硬盤:50M 以上剩余空間 屬性.1 可用性 .2 可靠性 .3 效率.4 安全性 .5 可維護性要求類的構(gòu)建
23、符合高內(nèi)聚低耦合度的要求 3.2.6 外部接口需求 用戶接口用戶界面:采用 Windows 的通用圖形界面,對用戶友好,且必須對鼠標鍵盤提供支持,界面設計應遵循:1. 盡量保持一致性:界面規(guī)范應遵循 Winows 軟件界面的規(guī)范 2. 設計完整的對話過程:系統(tǒng)的每一次對話都應該有明確的次序:開始、中間處理過程、結(jié)束。3. 提供簡單的錯誤處理機制 4. 提供信息反饋:用多種信息提示用戶當前軟件運行狀態(tài),軟件界面元件的功能。5. 操作可逆:其動作可以是單個的操作,或者是一個相對獨立的操作序列。 6. 設計良好的聯(lián)機幫助 : 軟件接口 本節(jié)指定需使用的其他軟件產(chǎn)品(如:
24、數(shù)據(jù)管理系統(tǒng)、操作系統(tǒng)、數(shù)學軟件包) ,以及同其他應用系統(tǒng)之間的接口。如果已有完整的接口文件,需在本節(jié)指明。說明內(nèi)容包括: a) 接口標識;b) 功能描述; 局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)7c) 數(shù)據(jù)流程和控制流程的方向;d) 數(shù)據(jù)格式、容量;e) 接口類型(如手動或自動) ;f) 接口數(shù)據(jù)中斷的優(yōu)先級別;g) 中斷響應時間; h) 異常處理等。 對每一個所需的軟件產(chǎn)品,需提供名稱、縮寫、規(guī)格說明、版本號、來源等內(nèi)容。3.2.7 通信接口 本產(chǎn)品用戶各終端和服務器屬于一個局域網(wǎng),網(wǎng)內(nèi)采用 TCP/IP 或UDP協(xié)。局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)8第四章第四章概要設計概要設計4.1 體系
25、結(jié)構(gòu)設計 復審數(shù)據(jù)流、控制流圖 4.1軟件體系結(jié)構(gòu)軟件程序結(jié)構(gòu)圖圖 4.2 結(jié)構(gòu)圖局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)9系統(tǒng)配置子系統(tǒng)圖 4.3 系統(tǒng)配置子系統(tǒng)消息記錄子系統(tǒng)圖 4.4 消息記錄子系統(tǒng)4.2 模塊設計 用戶掃描系統(tǒng)模塊局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)10圖 4.5 用戶掃描系統(tǒng)模塊圖 4.6 用戶掃描系統(tǒng)模塊 在線交流系統(tǒng)模塊局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)11圖 4.7 在線交流系統(tǒng)模塊 系統(tǒng)配置系統(tǒng) .1 上線提示模塊局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)12圖 4.8 上線提示模塊 設置個人資料模塊局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)13圖 4.9 設置個人資料模塊 系統(tǒng)屏蔽
26、模塊圖 4.10 系統(tǒng)屏蔽模塊局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)14第五章第五章詳細設計詳細設計5.1 用戶登錄模塊只列出程序界面以及與服務器端通訊部分的代碼:圖 5.1 用戶登錄模塊客戶端 class Connect extends JFrame implements ActionListener, ItemListener, KeyListenerpublic void link() throws Exception / 連接服務器hostName = hostText.getText().trim();port = Integer.parseInt(portText.getText();
27、client = new Socket(hostName, port);/ 創(chuàng)建一個流套接字并將其連接到指定 IP 地址的指定端口號。in = new BufferedReader(new InputStreamReader(client.getInputStream();out = new PrintWriter(client.getOutputStream();out.println(nameText.getText() + & + sex);out.flush();服務器端:public static void addConnection(Socket s, ClientProc
28、 cp)if (connections = null)connections = new Vector();局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)15connections.addElement(s);if (clients = null)clients = new Vector();clients.addElement(cp);public static void deleteConnection(Socket s, ClientProc cp)throws IOExceptionif (connections != null)connections.removeElement(s);s.clo
29、se();if (clients != null)clients.removeElement(cp);public static Vector getClients()return clients;5.2 用戶列表模塊只列出程序界面以及與服務器端通訊部分的代碼:客戶端:public void valueChanged(ListSelectionEvent e)/ 監(jiān)聽下拉列表的顯示內(nèi)容if (e.getSource() = peopleList)tryString select = (String) peopleList.getSelectedValue();if (select != nul
30、l) / 確保選擇非空String userInfo = select.split();String name = userInfo0.trim(); / 提取名字if (!name.equals(chf.myName) / 不能添加自己int count = chf.perponsComboBox.getItemCount();for (int i = 0; i count; i+)chf.perponsComboBox.setSelectedIndex(i);/ 選擇第 i 項String strName = (String) chf.perponsComboBox局域網(wǎng)內(nèi)的多功能聊天室的
31、設計與實現(xiàn)16.getSelectedItem();if (name.equals(strName) / 如果已經(jīng)在列表中,就復合框中選中,所以要確保沒有重名return;/ 如果沒有添加,就會執(zhí)行下面語句 添加chf.perponsComboBox.addItem(name); catch (Exception ee)System.out.println(發(fā)生錯誤 在 valueChanged + ee);public void actionPerformed(ActionEvent e)if (e.getSource() = refurbishButton) / 如果監(jiān)聽到要刷新列表try
32、listModel.clear(); / 清空列表chf.out.println(refurbish); / 發(fā)送刷新請求到服務器chf.out.flush(); catch (Exception ee)服務器端:public String getName()return name;public String getSex()return sex;局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)17public Socket getSocket()return s;private void updateList()/ 更新用戶列表(即發(fā)送當前在聊天室的用戶到新來的用戶列表中)Vector cs = Chat
33、Server.getClients();if (cs != null)for (Enumeration e = cs.elements(); e.hasMoreElements();)ClientProc cp = (ClientProc) e.nextElement();String exist_name = cp.getName();String exit_sex = cp.getSex();/* * for (int i = 0;ics.size() ;i+ ) String exist_name * =(ClientProc)cs.elementAt(i).getName(); Str
34、ing exit_sex = * (ClientProc)cs.elementAt(i).getSex(); */System.out.println(old + & + exist_name + & + exit_sex);out.println(old + & + exist_name + & + exit_sex);out.flush();5.3 文本聊天模塊只列出程序界面以及與服務器端通訊部分的代碼:局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)18圖 5.2 文本聊天模塊客戶端:if (e.getSource() = sentButton)/ 如果監(jiān)聽到發(fā)送信息按
35、鈕被點擊trymywords = inMsgField.getText();if (mywords.trim().length() != 0) / 不能發(fā)送空消息也不能都發(fā)空格if (withWho.equals(所有人)outmsg = mywords;/ 發(fā)送到服務器out.println(outmsg);out.flush();/ 顯示到我的頻道里面insert(myMsgArea, myName + : + mywords);/myMsgArea.setCaretPosition(myMsgArea.getText().length(/ ); else / 對某個人交談outmsg =
36、 withWho + & + privateFalse + &+ withWho + & + mywords;局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)19if (privateTalkFlag)outmsg = withWho + & + privateTure + &+ withWho + & + mywords;insert(myMsgArea, 您對 + withWho + 說: + mywords);/ myMsgArea.setCaretPosition(myMsgArea.getText()./ length(); elseinsert(m
37、yMsgArea, myName + 對 + withWho + 說: + mywords);/myMsgArea.setCaretPosition(myMsgArea.getText().length(/ );/ 發(fā)送到服務器out.println(outmsg);out.flush(); catch (Exception ee)ee.printStackTrace();insert(myMsgArea, 與服務器連接中斷,請重新登錄!);/ myMsgArea.setCaretPosition(myMsgArea.getText().length(); finallyinMsgField.
38、setText(); / 清空輸入框服務器端:/* * * 發(fā)送信息給所有的人*/public static void sendAll(String s)if (connections != null)for (Enumeration e = connections.elements(); / Enumeration 過時的接口,/ 可以用 for each 循環(huán)e.hasMoreElements();)局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)20tryPrintWriter pw = new PrintWriter(Socket) e.nextElement().getOutputStream()
39、;pw.println(s);pw.flush(); catch (IOException ex)ex.printStackTrace();System.out.println(s);/* 發(fā)送信息給單獨一個人*/public static boolean sendOne(String name, String msg)if (clients != null)for (Enumeration e = clients.elements(); e.hasMoreElements();)ClientProc cp = (ClientProc) e.nextElement();if (cp.getName().equals(name)tryPrintWriter pw = new PrintWriter(cp.getSocket().getOutputStream();pw.println(msg);pw.flush();return true; / 返回值為真,找到了這個人可以進行聊天 catch (IOException ioe)ioe.printStackTrace();return false;/ 沒有找到這個人,應該是此人已經(jīng)退出了聊天室局域網(wǎng)內(nèi)的多功能聊天室的設計與實現(xiàn)21
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 住宅精裝合同標準文本
- 兼職工勞務合同標準文本
- 2025年非銀行金融機構(gòu)之間的貸款合同的有效性
- 個人賬務合同標準文本
- 代理銷售混凝土合同標準文本
- 大學學生主要事跡材料6篇
- 2025LED廣告屏租賃合同
- 保障房銷售合同標準文本
- 2025中外合資經(jīng)營企業(yè)財務合同范本
- 專利完全轉(zhuǎn)讓合同標準文本
- 英語-安徽省安慶市2024-2025學年高三下學期第二次模擬考試試卷(安慶二模)試題和答案
- 2025屆江蘇省七市高三第二次調(diào)研測試物理+答案
- 陽光心理 健康人生-2025年春季學期初中生心理健康教育主題班會課件
- 人教部編版小學語文一年級下冊第一次月考達標檢測卷第一、二單元試卷含答案
- 2025年國家發(fā)展和改革委員會國家節(jié)能中心面向應屆畢業(yè)生招聘工作人員3人歷年自考難、易點模擬試卷(共500題附帶答案詳解)
- 衍紙簡介課件
- 2025年衢州職業(yè)技術學院單招職業(yè)傾向性測試題庫完美版
- 2025年上海青浦新城發(fā)展(集團)限公司自主招聘9名自考難、易點模擬試卷(共500題附帶答案詳解)
- 來訪人員安全入場教育
- 《動漫亮相》基于標準的教學課件
- 2025年度離婚協(xié)議書有子女撫養(yǎng)權及財產(chǎn)分割協(xié)議
評論
0/150
提交評論