周波海南經(jīng)貿(mào)職業(yè)技術學院
?
基于Java平臺的網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)
周波
海南經(jīng)貿(mào)職業(yè)技術學院
摘要:當今時期,計算機技術和網(wǎng)絡技術高速發(fā)展,全民迎來信息化時代。計算機技術的普及,極大程度的改變了人們傳統(tǒng)的生活習慣,計算機早已成為當今社會不可缺少的產(chǎn)物??茖W技術的發(fā)展直接推動軟件產(chǎn)品的完善,通訊軟件產(chǎn)品更是受到人們的熱烈歡迎。通過對基于Java平臺的網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)進行研究分析,希望能夠計算機行業(yè)研究人員提供一定的理論依據(jù)。
在網(wǎng)絡盛行的當今時代,傳統(tǒng)的溝通方式早已受到網(wǎng)絡的沖擊,發(fā)生極大的變化。人與人之間的溝通,更加利用網(wǎng)絡通訊軟件進行聊天,網(wǎng)絡聊天早已成為人們相互間溝通必要的方式。而Java作為一項較為理想的編程語言,具有安全穩(wěn)定的優(yōu)勢,同時其多線程、與平臺無關的特點,在軟件設計中較為普遍使用的編程語言。
設計語言:Java
設計平臺:Windows7;WindowsXP;Windows2000
現(xiàn)階段的計算機技術得到高速發(fā)展,以此使網(wǎng)絡形式更加豐富,內(nèi)容更加繁多。計算機通過聯(lián)網(wǎng),需要在協(xié)議的支持下,以此實現(xiàn)相互之間的通訊?,F(xiàn)如今,TCP/IP協(xié)議是Internet較為普遍使用的網(wǎng)絡協(xié)議。而網(wǎng)絡編程的最終目的,主要是利用網(wǎng)絡協(xié)議實現(xiàn)計算機之間的通訊。通訊雙方能夠互相等待對象所提出的請示,并且能夠給予回應;客戶有需求時可以申請服務。服務器具有守護進程的作用,同時能夠對網(wǎng)絡端口進行監(jiān)聽,如果接收到客戶請求,則相應服務就自動啟動以此回應客戶,并且能夠繼續(xù)保持服務端口的監(jiān)聽作用,滿足所有客戶請求所需。
2.1Socket通信技術
Socket通信是網(wǎng)絡中計算機進行通訊的一種方法,應用程序通過調(diào)用系統(tǒng)提供的Socket庫函數(shù),能夠很容易的實現(xiàn)網(wǎng)絡計算機之間的相互通信。一般來說,Socket的工程程序可以分成以下三個步驟:第一、建立連接?;贘ava平臺的網(wǎng)絡聊天系統(tǒng),主要利用TCP/IP協(xié)議進行通信,因此,在通信之前,需要建立點對點連接,同時保證其安全性和穩(wěn)定性,以此實現(xiàn)服務端同客戶端之間的連接;第二、數(shù)據(jù)通信。此次網(wǎng)絡聊天系統(tǒng)的設計,在數(shù)據(jù)讀取和發(fā)送方面,主要采取OutputStream和InputStream,然后信息經(jīng)過服務器處理,最終客戶端接收到信息數(shù)據(jù);第三、通信完畢。將連接進行關閉。
2.2TCP/IP協(xié)議
TCP為傳輸控制協(xié)議,IP為網(wǎng)際協(xié)議,是網(wǎng)絡層最重要的協(xié)議。采用TCP/IP協(xié)議通過互聯(lián)網(wǎng)傳送信息可減少網(wǎng)絡中的傳輸阻塞,方便大批量的數(shù)據(jù)在網(wǎng)上傳輸,從而提高網(wǎng)絡的傳輸效率。在此次系統(tǒng)設計中,主要考慮到其以下幾個特點:第一、TCP/IP協(xié)議具有開放性,對操作系統(tǒng)以及硬件不限制,免費供用;第二、TCP/IP協(xié)議屬于標準的高層協(xié)議,能夠保證用戶在使用點對點網(wǎng)絡服務時,更加具有穩(wěn)定性和可靠性;第三、TCP/IP協(xié)議進行分配方案時通常采取一致的網(wǎng)絡地址,每臺機器對應唯一的IP地址;第四、TCP/IP協(xié)議對硬件不設要求,在局域網(wǎng)或者廣域網(wǎng)中均可使用。
2.3多線程
在Java語言中,線程主要以運行、就緒、阻塞、以及結束等四個狀態(tài)存在。此次基于Java平臺的網(wǎng)絡聊天系統(tǒng)的設計主要采取多線程的方式,主要是利用多線程,能夠有效降低程序相應時間,保證工作效率,使設備更加具有良好的交互性;此外,多線性有利于使程序結構進一步簡化,便于程序的后期維護工作。在系統(tǒng)中,容易發(fā)生服務器受到多個客戶端訪問的情況,因此需要對變量進行同步處理。而Java程序中的JVM,主要起到對多個線程分配使用權的作用,以此有效解決多線程阻塞的故障。因此,對系統(tǒng)中服務器的變量做同步處理,是相當具有必要性。
3數(shù)據(jù)庫設計
此次基于Java平臺的網(wǎng)絡聊天系統(tǒng)的設計,數(shù)據(jù)表起到保護用戶姓名、年齡、密碼等基本信息的作用;用戶注冊成功之后,可以對自己圖像進行修改;此外,為了提升系統(tǒng)的安全性和穩(wěn)定性,通常情況下不采取明文存儲形式的密碼存儲;密碼在存入數(shù)據(jù)庫之前,就對密碼實行加密措施,數(shù)據(jù)庫中存入的結果是加密后的結果;密碼需要驗證時,用戶進行密碼輸入時同樣對其進行加密,通過同數(shù)據(jù)庫進行對比,相同則可登陸。
綜上所述,在現(xiàn)有的網(wǎng)絡聊天軟件中,比如說QQ、微信等等,每種軟件各具特色,都能在人與人之間的溝通方式中扮演重要角色。基于Java平臺的網(wǎng)絡聊天系統(tǒng)的設計,能夠對Java數(shù)據(jù)庫技術、網(wǎng)絡通信技術等特點充分結合,同時其安全穩(wěn)定的優(yōu)點保證用戶使用時更加放心,因此,Java技術具有廣泛的應用前景。
參考文獻
[1]張紅霞,陳鴻星.基于Java網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)[J].科技信息,2014,04:150-151
[2]郭文占.基于java平臺的網(wǎng)上評教系統(tǒng)的設計與實現(xiàn)[J].電腦知識與技術:學術交流,2014(9):1928-1929
[3]陳盼,黃辰.基于Java的網(wǎng)絡聊天系統(tǒng)的設計與實現(xiàn)[J].物聯(lián)網(wǎng)技術,2016,01:94-95
周波,1971年3月,男,漢族,籍貫:??谑?講師,單位:海南經(jīng)貿(mào)職業(yè)技術學院,研究方向:多媒體技術及其應用、網(wǎng)頁設計、網(wǎng)絡技術、移動通信、教育信息化技術等。
作者簡介
關鍵字:Java 網(wǎng)絡聊天 設計與實現(xiàn)