【正文】
念是人們應(yīng)該以所有 “對(duì)社會(huì)有用 ”的方式自 由地使用軟件。 Ubuntu 項(xiàng)目完全 遵從 開源軟件 開發(fā)的原則;并且鼓勵(lì)人們使用、完善并傳播開源軟件。而其 開發(fā)目的是為了使個(gè)人計(jì)算機(jī)變得簡(jiǎn)單易用,但亦有提供服務(wù)器版本。舍特爾沃斯創(chuàng)立,其首個(gè)版本于2021 年 10月 20 日發(fā)布,并以 Debian為開發(fā)藍(lán)本。而且本系統(tǒng)的開發(fā)工具便于和 MySQL 數(shù)據(jù)庫(kù)相連,為今后向網(wǎng)絡(luò)發(fā)展提供了更加便利的環(huán)境。所以在費(fèi)用方面是可行的。 經(jīng)濟(jì)可行性 整套即時(shí)通信軟件在 Ubuntu Linux 系統(tǒng)下開發(fā),使用 Tomcat 作為 Jsp 服務(wù)器,采用 MySQL 數(shù)據(jù)庫(kù),客戶端和服務(wù)器端使用 Java 作為開發(fā)語言。 Java Applet 小程序不依賴操作系統(tǒng),只要瀏覽器支持就可以運(yùn)行,而 JSP 完全在服務(wù)器端生成頁面,與用戶的系統(tǒng)無關(guān)。 B/S 方式是 對(duì) C/S模式應(yīng)用的擴(kuò)展 , 在這種結(jié)構(gòu)下,用戶工作界面是通過瀏覽器來實(shí)現(xiàn)的 ,可以忽略操作系統(tǒng)的差異,因此開發(fā)一套基于 B/S 方式的即時(shí)通信軟件是很有價(jià)值的。所以,必須進(jìn)行認(rèn)真、計(jì)劃、徹底的軟件測(cè)試。 在開發(fā)軟件的過程中,人們使用了許多保證軟件質(zhì)量的方法分析、設(shè)計(jì)和實(shí)現(xiàn)軟件,但難免還會(huì)在工作中犯錯(cuò)誤。 Java Applet 可以為本即時(shí)通信軟件提供一個(gè)易用的客戶端界面;通過 socket 編程技術(shù)可以簡(jiǎn)單的實(shí)現(xiàn)網(wǎng)絡(luò)信息的傳遞。 由于采用了基于 B/S 方式的結(jié)構(gòu),必定會(huì)對(duì)客戶端有一定的限制(只能在瀏覽器內(nèi)運(yùn)行)。如果問題沒有可行的解,那么花費(fèi)在這項(xiàng)開發(fā)工程上的任何時(shí)間、資源、人力和經(jīng)費(fèi)都是無謂的浪費(fèi)。 同樣的,基于 B/S 方式的即時(shí)通訊系統(tǒng)需要做到多平臺(tái)兼容,就必須要選擇一個(gè)能在任意 系統(tǒng)上都可以運(yùn)行的開發(fā)軟件,而 Java 號(hào)稱“一次編譯,處處運(yùn)行”自然是開發(fā)工具中的首選。同時(shí)出于對(duì)兼容性的考慮可以選擇 Linux 作為開發(fā)環(huán)境,同時(shí)選擇 Tomcat 做 Web 服務(wù)器實(shí)現(xiàn)對(duì)用戶的管理。 基于以上考慮,本系統(tǒng)需要提 供一套完整的用戶管理系統(tǒng),實(shí)現(xiàn)用戶的注冊(cè)、登錄以及個(gè)人信息的管理;一個(gè)簡(jiǎn)單易用友好的即便是入門級(jí)的用戶也可以輕易掌握客戶端界面;一個(gè)強(qiáng)大快捷提供數(shù)據(jù)包轉(zhuǎn)發(fā)與轉(zhuǎn)存的服務(wù)器端。另外,基于 B/S 方式的即時(shí)通信軟件也可以作為企業(yè)客戶服務(wù)部門的一個(gè)重要組成部分,使用它可以縮短客戶與企 業(yè)間的交流成本,提高企業(yè)的反應(yīng)速度更好地為客戶服務(wù)。 因此使用 B/S 方式開發(fā)即時(shí)通信軟件是解決不同操作系統(tǒng)用戶之間進(jìn)行即時(shí)通信障礙的有效途徑之一。與其不同的是, B/S 方式 統(tǒng)一了客戶端,將系統(tǒng)功能實(shí)現(xiàn)的核心部分集中到服務(wù)器上,簡(jiǎn)化了系統(tǒng)的開發(fā)、維護(hù)和使用。 然而在眾多的即時(shí)通信軟件中很少有服務(wù)提供商同時(shí)對(duì) Windows、 Linux或者 Mac 操作系統(tǒng)提供支持。 與此同時(shí), 隨著計(jì)算機(jī)知識(shí) 的 普及以及我國(guó)知識(shí)產(chǎn)權(quán)意識(shí)的增強(qiáng), Linux 操作系統(tǒng)以其低廉的價(jià)格,多重的選擇以及日趨完善的用戶體驗(yàn) 逐漸 成為更多計(jì)算機(jī)用戶選擇。 它 在時(shí)間上要比電子郵件更加具有實(shí)時(shí)性,而費(fèi)用相對(duì)電話交流也要經(jīng)濟(jì)的多。Compatiple。 Instant Messaging。 it was embedded in html document. It offers management of personal information, instant messages sending and receiving. Server module used Java to pile。 系統(tǒng)最終滿足用戶在不同的操作系統(tǒng)下進(jìn)行即時(shí)通信的需求,實(shí)現(xiàn) B/S方式的即時(shí)通信軟件??蛻舳四K采用 Java Applet 小程序技術(shù),嵌入在 html 文檔中在瀏覽器中運(yùn)行,實(shí) 現(xiàn)用戶個(gè)人信息的管理,即時(shí)消息的發(fā)送與接受。 本 即時(shí)通訊軟件 系統(tǒng) 共由四個(gè)模塊組成:登錄模塊,注冊(cè)模塊,客戶端模塊和服務(wù)器端模塊。 在本軟件中, 主要采用 Java 語言 作為開發(fā) 語言 , 選用 MySQL 為網(wǎng)絡(luò)數(shù)據(jù)提供數(shù)據(jù)庫(kù)服務(wù),使用 JDBC 作為執(zhí)行 SQL 語句的 API 用以連接、查詢數(shù)據(jù)庫(kù)。 沈陽大學(xué)畢業(yè)設(shè)計(jì)(論文) No 1 基于 B/S方式的即時(shí)通信軟件的設(shè)計(jì)與實(shí)現(xiàn) 專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)( 信息安全 ) 班級(jí): 2021 級(jí) 1 班 姓名: 郭聰 沈陽大學(xué)畢業(yè)設(shè)計(jì)(論文) No 1 目 錄 引 言 3 6 需求分析 6 可行性分析 6 技術(shù)可行性 6 經(jīng)濟(jì)可行 性 6 操作可行性 6 軟硬件平臺(tái) 7 硬件平臺(tái) 7 軟件平臺(tái) 7 2 系統(tǒng)的開發(fā)環(huán)境及工具簡(jiǎn)介 8 開發(fā)環(huán)境 8 Ubuntu Linux 簡(jiǎn)介 8 Tomcat 簡(jiǎn)介 8 開發(fā)工具介紹 9 Java 簡(jiǎn)介 9 Applet 簡(jiǎn)介 10 JSP 簡(jiǎn)介 10 JDBC 簡(jiǎn)介 11 MySQL 簡(jiǎn)介 12 3 系統(tǒng)的總體設(shè)計(jì) 14 總體概述 14 各模塊功能概述 14 登錄模塊 14 注冊(cè)模塊 14 客戶端模塊 15 服務(wù)器端模塊 15 4 系統(tǒng)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的設(shè)計(jì)與建立 16 MYSQL 系統(tǒng)的安裝 16 MYSQL 數(shù)據(jù)庫(kù)的基本設(shè)置 19 修改默認(rèn)字符集 19 開放遠(yuǎn)程服務(wù) 22 數(shù)據(jù)庫(kù)表的設(shè)計(jì) 23 users 表 23 records 表 23 online 表 24 MYSQL 與 JSP、 JAVA 的連接 24 5 系統(tǒng)詳細(xì)設(shè)計(jì) 28 沈陽大學(xué)畢業(yè)設(shè)計(jì)(論文) No 2 登錄模塊的 設(shè)計(jì) 28 的設(shè)計(jì) 28 的設(shè)計(jì) 29 注冊(cè)模塊的 設(shè)計(jì) 31 的設(shè)計(jì) 31 的設(shè)計(jì) 32 用戶頁面的設(shè)計(jì) 34 chatGui 的設(shè)計(jì) 34 ClientThread 的設(shè)計(jì) 40 服務(wù)器端的設(shè)計(jì) 41 Server 的設(shè)計(jì) 41 ServerThread 的設(shè)計(jì) 43 結(jié) 論 45 致 謝 46 參考文獻(xiàn) 47 附錄 源程序清單 48 摘 要 本文概述了基于 B/S 方式的 即時(shí)通信軟件 的 設(shè)計(jì)與實(shí)現(xiàn)過程 。重點(diǎn)介紹了 MySQL 數(shù)據(jù)庫(kù) 系統(tǒng) 的 安裝,數(shù)據(jù)表結(jié)構(gòu)的 設(shè)計(jì) , 各 模塊的 功能 以及實(shí)現(xiàn)的方法。 軟件 的運(yùn)行環(huán)境 采用 開源免費(fèi)的 操作 系統(tǒng),采用 Tomcat作為 JSP 運(yùn)行容器 。登錄模塊實(shí)現(xiàn)系統(tǒng)通過驗(yàn)證用戶名和密碼進(jìn)行登錄,注冊(cè)模塊實(shí)現(xiàn)新用戶的注冊(cè)添加功能。服務(wù)器端模塊采用 Java 編寫,實(shí)現(xiàn)即時(shí)消息的轉(zhuǎn)發(fā)與離線信息保存。 關(guān)鍵詞: B/S 方式;即時(shí)通信; Linux;兼容性; Java Abstract This paper has summarized the process of instant messaging system?s designing and implementation which is based on B/S model. It focuses on the MySQL database system installation, the design of model?s function and method realization. In this system, Java language was used as mainly development tools, MySQL was selected as the database to provide work data services, chosen JDBC as the implementation of the API to connect, query the database. The system run on which is an opensource operating and free, Tomcat was uses as JSP container operation. This instant messaging system is made up of four modules: login module, registration module, client module and server module. Login module authenticated legal user by contrasting user name and password, the module achieve the registration of new users. Client module used Java Applet technology。 it prepared and achieved instant messages forwarded to the deposited. This system finally satisfy requirement of users on different operating systems by using the immediate munication, and implement instant messaging system of B / S model. Key words: B / S model.。 Linux。Java 引 言 隨著網(wǎng)絡(luò)的普及,人類生活越來越依賴網(wǎng)絡(luò),人與人之間的交流也更多的是在網(wǎng)絡(luò)上進(jìn)行,由于交流的實(shí)時(shí) 性,即時(shí)通訊系統(tǒng)也被越來越多的人所使用。在這種環(huán)境下,即時(shí)通信軟件得到了很好的發(fā)展。 以 iphone 為代表的蘋果公司產(chǎn)品近些年來也開始進(jìn)入國(guó)內(nèi)普通用戶的視線, Mac OS 以其強(qiáng)大的 2D、 3D 和多媒體圖形性能 得到人們的青睞。拋開市場(chǎng)因素,絕大多數(shù)的即時(shí)通信軟件都是基于 C/S(客戶 /服務(wù)器) 方式 的,這種的 方式 不利于軟件跨平臺(tái)移植 ,很容易出現(xiàn)兼容性的問題,而且在 C/S 方式下臃腫的客戶端也越來越成為眾矢之的。 客戶機(jī)上只要 有 一個(gè)瀏覽器( Browser),如 Netscape, IE, Firefox 或 Opera,而不需要考慮用戶使用了哪一種操作系統(tǒng)。 開發(fā)基于 B/S 方式的即時(shí)通信軟件具有相當(dāng)重要的現(xiàn)實(shí)意義,它可以實(shí)現(xiàn)不同操作系統(tǒng)用戶之間無障礙的交流,免除了下載安裝客戶端的步驟, 給用戶一個(gè)更加輕便的方式進(jìn)行溝通。 了解了每個(gè)項(xiàng)目所必需要做的事,才能把項(xiàng)目繼續(xù)下去,為此要對(duì)所做的課題進(jìn)行一個(gè)基本的了解,也就是要了解本課題真正要 “做什么 ”。 要實(shí)現(xiàn)基于 B/S 方式的即時(shí)通信軟件就需要選擇一套與互聯(lián)網(wǎng)聯(lián)系密切的開發(fā)環(huán)境。這樣的選擇有不僅能有效的發(fā)揮軟件強(qiáng)大的網(wǎng)絡(luò)功能,還可以極大的節(jié)約開發(fā)成本。 但并不是所有問題都有簡(jiǎn)單明顯的解決方法,事實(shí)上,許多問題不可能在預(yù)定的系統(tǒng)規(guī)模之內(nèi)解決。由于開發(fā)軟件所需資源缺乏和交付時(shí)間限制的困擾,使得計(jì)算機(jī)軟件的開發(fā)變得比較困難??紤]到這一點(diǎn),可以選擇使用 Java Applet 和 socket 技術(shù)進(jìn)行設(shè)計(jì)。選用以上兩種技術(shù)手段 可以確保程序在瀏覽器中的運(yùn)行效果,而又不用擔(dān)心系統(tǒng)功能會(huì)被削弱。這樣,在軟件產(chǎn)品中就會(huì)隱藏許多錯(cuò)誤和缺陷,尤其是對(duì)規(guī)模大、復(fù)雜性高的軟件更是如此。 需求分析 隨著非 Windows 操作系統(tǒng)用戶越來越多,現(xiàn)有的基 于 C/S 模式的即時(shí)通信軟件已無法滿足不同操作系統(tǒng)用戶間即時(shí)通訊的需求。 可行性分析 技術(shù)可行性 本系統(tǒng)基于 B/S 方式,因此需要選擇不受用戶操作系統(tǒng)影響的完全依靠服務(wù)器端的編程技術(shù)。所以在技術(shù)層面上是可以實(shí)現(xiàn)的。以上提及的軟件均遵循 GPL 通用公共許,可以在互聯(lián)網(wǎng)上免費(fèi)獲得,因此在開發(fā)軟件上成本為零,只需要考慮開發(fā)人員的開銷。 操作可行性 對(duì)于即時(shí)通信軟件,由于其操作并不復(fù)雜且采用 B/S 方式進(jìn)行管理,同時(shí)數(shù)據(jù)庫(kù)也不是很復(fù)雜。 軟硬件平臺(tái) 硬件平臺(tái) CPU: AMD3000+ 內(nèi)存: 1024M 硬盤: 80G 軟件平臺(tái) Ubuntu Linux Tomcat MySQL JDK 2 系統(tǒng)的開發(fā)環(huán)境及工具簡(jiǎn)介 開發(fā)環(huán)境 Ubuntu Linux 簡(jiǎn)介 Ubuntu 基于 GNU/Linux 平臺(tái)由馬克 但其以每六個(gè)月發(fā)布一次新版本為目標(biāo),使得人們得以更頻繁地獲取新軟件。 Ubuntu 的每個(gè)新版本均會(huì)包含