利用Java EE相關(guān)技術(shù)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的Web聊天室系統(tǒng)
(1)編寫(xiě)一個(gè)登錄頁(yè)面,登錄信息中有用戶(hù)名和密碼,分別用兩個(gè)按鈕來(lái)提交和重置登錄信息。
(2)通過(guò)請(qǐng)求指派來(lái)處理用戶(hù)提交的登錄信息,如果用戶(hù)名為本小組成員的名字且密碼為對(duì)應(yīng)的學(xué)號(hào)時(shí),跳轉(zhuǎn)到LoginSuccess顯示聊天界面(類(lèi)似于QQ群聊天界面,可使用HTML中的frameset標(biāo)簽生成兩個(gè)窗口,一個(gè)用來(lái)實(shí)現(xiàn)用戶(hù)信息輸入,另一個(gè)顯示所有用戶(hù)聊天記錄的);否則跳轉(zhuǎn)到LoginFail頁(yè)面,提示用戶(hù)重新登錄(注:此頁(yè)面要包含前面的登錄界面)。
(3)在聊天室界面顯示“信息輸入”窗口和“聊天記錄顯示”窗口的內(nèi)容;用戶(hù)在“信息輸入”窗口中鍵入聊天內(nèi)容,點(diǎn)擊“發(fā)送”按鈕后,在“聊天記錄顯示”窗口中顯示發(fā)送消息的用戶(hù)名稱(chēng)和聊天內(nèi)容(提示:可以利用Servlet 上下文保存聊天記錄并將其顯示在Textarea中。)
(4)在登錄界面上實(shí)現(xiàn)記住用戶(hù)名和密碼的功能,使得當(dāng)用戶(hù)選擇了此功能并成功登錄后,在其下次登錄時(shí)可以不用再輸入用戶(hù)名和密碼即可登錄(提示:此功能可通過(guò)Cookie來(lái)實(shí)現(xiàn)。)
(5)編寫(xiě)一個(gè)Listener程序來(lái)監(jiān)聽(tīng)會(huì)話(huà)的創(chuàng)建和銷(xiāo)毀事件,以此統(tǒng)計(jì)當(dāng)前在線(登錄)人數(shù),并將其顯示在聊天界面上。
(6)添加一個(gè)Filter來(lái)實(shí)現(xiàn)對(duì)未經(jīng)過(guò)登錄頁(yè)面而直接訪問(wèn)聊天室的非法請(qǐng)求進(jìn)行攔截。
系統(tǒng)要求
1.用戶(hù)登錄模塊
登錄界面輸入用戶(hù)的賬號(hào)和密碼,通過(guò)登錄驗(yàn)證的用戶(hù)即可進(jìn)入聊天室進(jìn)行聊天。
2.用戶(hù)發(fā)言的模塊
完成聊天的內(nèi)容輸入后,通過(guò)單擊“發(fā)送”按鈕,即可顯示聊天的內(nèi)容。
3.聊天內(nèi)容顯示模塊
實(shí)時(shí)同步顯示所有人的聊天內(nèi)容
4.提示模塊
顯示當(dāng)前聊天室登錄賬號(hào)名字和在線人數(shù)。
實(shí)現(xiàn)技術(shù)
①打開(kāi)瀏覽器,進(jìn)入網(wǎng)上聊天系統(tǒng)首頁(yè)登錄界面login.jsp。
②Main.java類(lèi)獲取login.jsp用戶(hù)輸入的用戶(hù)名和密碼,進(jìn)行邏輯驗(yàn)證,驗(yàn)證成功則跳轉(zhuǎn)到聊天界面welcome.jsp,否則跳轉(zhuǎn)到登陸失敗提示界面loginFail.jsp。
③統(tǒng)計(jì)當(dāng)前在線人數(shù)通過(guò)調(diào)用OnlineListener類(lèi)來(lái)實(shí)現(xiàn)。
④中間主體頁(yè)面main.jsp頁(yè)面實(shí)現(xiàn)用戶(hù)在聊天輸入框中輸入消息,發(fā)送并顯示在聊天消息顯示框中功能。實(shí)現(xiàn)聊天功能通過(guò)調(diào)用InputInformation.java類(lèi)來(lái)實(shí)現(xiàn)。
④記住密碼自動(dòng)填充功能:
根據(jù)表單中的記住密碼是否勾選,有選擇的將賬號(hào)信息存到cookie中,在jsp中通過(guò)java腳本程序取出cookie程序中的賬號(hào)信息,并填充至賬號(hào)密碼的輸入框。
⑤在線人數(shù)監(jiān)聽(tīng)功能:通過(guò)監(jiān)聽(tīng)session,在登陸成功時(shí),會(huì)將用戶(hù)信息存入session,通過(guò)session的數(shù)量來(lái)判斷在線人數(shù)。
⑥聊天功能:編寫(xiě)一個(gè)servlet程序,接收輸入框中的信息,取出上下文中存聊天記錄的列表List,并將接收的信息對(duì)象存到列表中。
⑦使用txt文本作為數(shù)據(jù)庫(kù),記錄聊天記錄。
整體介紹:網(wǎng)上聊天室由welcome、main、login、loginFail、header五個(gè)jsp文件和CodeFilter、InputInformation、Main、OlineListener四個(gè)文件組成。實(shí)現(xiàn)了可以進(jìn)行自動(dòng)保存用戶(hù)名密碼,判斷用戶(hù)名和密碼是否匹配,用戶(hù)可以信息輸入也可以顯示所有用戶(hù)聊天記錄,并能統(tǒng)計(jì)當(dāng)前在線(登錄)人數(shù)和能對(duì)系統(tǒng)所有的Servlet程序進(jìn)行過(guò)濾的功能。
整體流程:首先打開(kāi)瀏覽器,進(jìn)入網(wǎng)上聊天系統(tǒng)首頁(yè)登錄界面login.jsp,通過(guò)輸入用戶(hù)名和密碼,進(jìn)行登錄。之后Main.java類(lèi)獲取login.jsp用戶(hù)輸入的用戶(hù)名和密碼,進(jìn)行驗(yàn)證,驗(yàn)證成功則跳轉(zhuǎn)到聊天界面welcome.jsp,否則跳轉(zhuǎn)到登陸失敗界面loginFail.jsp。如果登錄成功進(jìn)入Welcome.jsp聊天界面,其中頭部界面(header.jsp)顯示當(dāng)前登陸用戶(hù)昵稱(chēng)和當(dāng)前在線總?cè)藬?shù)(統(tǒng)計(jì)當(dāng)前在線人數(shù)通過(guò)調(diào)用OnlineListener類(lèi)來(lái)實(shí)現(xiàn));中間主體頁(yè)面main.jsp頁(yè)面實(shí)現(xiàn)用戶(hù)在聊天輸入框中輸入消息,發(fā)送并顯示在聊天消息顯示框中功能。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-732639.html
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-732639.html
到了這里,關(guān)于利用Java EE相關(guān)技術(shù)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的Web聊天室系統(tǒng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!