畢業(yè)設(shè)計(jì)論文-班級(jí)管理系統(tǒng)_第1頁(yè)
畢業(yè)設(shè)計(jì)論文-班級(jí)管理系統(tǒng)_第2頁(yè)
畢業(yè)設(shè)計(jì)論文-班級(jí)管理系統(tǒng)_第3頁(yè)
畢業(yè)設(shè)計(jì)論文-班級(jí)管理系統(tǒng)_第4頁(yè)
畢業(yè)設(shè)計(jì)論文-班級(jí)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

PAGEPAGEI摘要隨著計(jì)算機(jī)技術(shù)應(yīng)用的普及和世界信息化步伐的加快,上網(wǎng)沖浪的人越來(lái)越多,網(wǎng)絡(luò)成為人們不可缺少的一部分,通過(guò)網(wǎng)絡(luò)來(lái)發(fā)布信息已成為一種常用的方式,為了更合理地對(duì)這些信息進(jìn)行管理,本人開(kāi)發(fā)了高校班級(jí)管理系統(tǒng),方便大家交流,及時(shí)獲取新聞信息,也方便畢業(yè)之后同學(xué)之間保持聯(lián)系。系統(tǒng)主要實(shí)現(xiàn)了班級(jí)管理(包括添加,查看,編輯和刪除),用戶管理(包括搜索,查看,權(quán)限設(shè)置),系統(tǒng)消息管理(包括發(fā)送,查看和刪除),系統(tǒng)公告管理(包括添加,編輯和刪除),教師通訊錄管理(包括添加,編輯和刪除)本文介紹了該系統(tǒng)開(kāi)發(fā)的需求調(diào)查分析,系統(tǒng)概要設(shè)計(jì),系統(tǒng)詳細(xì)設(shè)計(jì)及數(shù)據(jù)庫(kù)設(shè)計(jì)還介紹了系統(tǒng)設(shè)計(jì)中使用的理論知識(shí)和關(guān)鍵技術(shù)。關(guān)鍵字:班級(jí)管理系統(tǒng),JAVA,Web,JavaBean,B/SAbstractWiththeapplicationofcomputertechnologyandthepopularityoftheworldtoacceleratethepaceofinformationtechnology,surfingtheInternetmoreandmorepeople,thenetworkbecameanindispensablepartofpeople,toreleaseinformationthroughtheInternethasbecomeapopularwaytoamorerationaloftheseInformationmanagement,theauthorsdevelopedaclasssystemtofacilitatetheexchange,timelyaccesstonewsandinformation,andalsofacilitatethestudentsaftergraduationmaintaincontactbetween.

Systemachievedamajorclassmanagement(includingadd,read,editanddelete),usermanagement(includingsearch,view,theauthorityset),managementinformationsystem(includingthetransmissionandreadanddelete),thenoticemanagementsystem(includingadd,editandDeleted),teachercontactsmanagement(includingadd,editanddelete)

Thispaperdescribesthedevelopmentofthesystemneedssurveyanalysis,systemdesignsummary,thesystemdetaileddesignanddatabasedesignalsointroducedasystemusedinthedesignoftheoreticalknowledgeandkeytechnologies.Keywords:Classmanagementsystem,JAVA,JavaBean,Web,B/S藍(lán)天工作室為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案QQ:599057179PAGE34藍(lán)天工作室為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案QQ:599057179目錄摘要 IAbstract II1.緒論 11.1引言 11.2開(kāi)發(fā)背景 12.系統(tǒng)相關(guān)技術(shù) 32.1B/S模式介紹 32.2三層B/S結(jié)構(gòu) 32.4JSP技術(shù)介紹 42.5AJAX技術(shù)介紹 42.6JDBC技術(shù)介紹 52.7SQLSERVER2000簡(jiǎn)介 53.需求分析 73.1功能描述 73.2系統(tǒng)結(jié)構(gòu)圖 84系統(tǒng)設(shè)計(jì) 94.1各模塊設(shè)計(jì) 94.3數(shù)據(jù)庫(kù)設(shè)計(jì) 135.系統(tǒng)詳細(xì)設(shè)計(jì) 215.1登錄模塊 215.2用戶權(quán)限管理 215.3刪除功能的實(shí)現(xiàn) 225.4查詢功能的實(shí)現(xiàn) 225.5留言功能的實(shí)現(xiàn) 235.6用戶權(quán)限確認(rèn) 255.7數(shù)據(jù)庫(kù)的詳細(xì)設(shè)計(jì) 256.系統(tǒng)測(cè)試 286.1測(cè)試目的 286.2測(cè)試方法 286.3測(cè)試用例 286.4測(cè)試結(jié)果 30參考資料 31致謝 321.緒論1.1引言Internet已經(jīng)成為人們生活、工作、學(xué)習(xí)越來(lái)越離不開(kāi)的平臺(tái)。Web技術(shù)已經(jīng)不在局限于單純地提供信息服務(wù),而是日益成為一個(gè)操作平臺(tái),為用戶提供強(qiáng)大的服務(wù)功能。例如網(wǎng)上電子商務(wù)、社會(huì)信息數(shù)據(jù)庫(kù)等。網(wǎng)絡(luò)實(shí)現(xiàn)了遠(yuǎn)程通訊,人們能夠通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行電子郵件的發(fā)送,召開(kāi)網(wǎng)絡(luò)會(huì)議,網(wǎng)上購(gòu)物,甚至坐在家里就可以上大學(xué)(網(wǎng)上教育)。網(wǎng)絡(luò)有巨大的潛力待我們?nèi)ラ_(kāi)發(fā)與探索。因此,基于B/S體系架構(gòu)創(chuàng)建這個(gè)班級(jí)管理系統(tǒng),緊跟行業(yè)發(fā)展,滿足人們生活、學(xué)習(xí)的需要。建立一個(gè)基于B/S架構(gòu)的班級(jí),實(shí)現(xiàn)信息網(wǎng)絡(luò)化。通過(guò)較豐富的功能將Web的技術(shù)特點(diǎn)體現(xiàn)出來(lái)。該系統(tǒng)可供包括在校、離校、以及游客登錄使用。登錄者可以查詢信息或者發(fā)布信息,也可以通過(guò)此網(wǎng)站與朋友聯(lián)系,并且還能夠創(chuàng)建虛擬班級(jí)等功能。系統(tǒng)中班級(jí)管理為必不可少的模塊項(xiàng),主要是為了安全有效地存儲(chǔ)和管理登錄網(wǎng)站的用戶的信息,賦予管理員特定的權(quán)限,可以對(duì)用戶進(jìn)行分類(lèi),添加,刪除,修改等。方便網(wǎng)站的管理與維護(hù)。要實(shí)現(xiàn)這樣的功能,離不開(kāi)后臺(tái)數(shù)據(jù)庫(kù)的支持。用戶驗(yàn)證信息,收集到的用戶點(diǎn)擊信息,分析得出的關(guān)聯(lián)規(guī)則表等大量的數(shù)據(jù)都由數(shù)據(jù)庫(kù)管理系統(tǒng)管理。本文中數(shù)據(jù)庫(kù)服務(wù)器端采用了SERVER作為后臺(tái)數(shù)據(jù)庫(kù),以先進(jìn)的JDBC技術(shù)與數(shù)據(jù)庫(kù)連接,結(jié)合SQL語(yǔ)句處理對(duì)用戶分類(lèi),添加,刪除,修改等操作,使Web與數(shù)據(jù)庫(kù)緊密聯(lián)系起來(lái)。1.2開(kāi)發(fā)背景1.2.1B/S模型的優(yōu)點(diǎn)幾乎沒(méi)有限制的客戶端訪問(wèn)和極其簡(jiǎn)單化的應(yīng)用程序部署和管理是B/S模型的優(yōu)勢(shì)所在。它和C/S模型比較優(yōu)點(diǎn)極為突出。兩層技術(shù)模型(Two-TierArchitecture)是指客戶機(jī)直接與服務(wù)器交流,沒(méi)有其他服務(wù)介入的技術(shù)模型。對(duì)用戶量在12—100的局域網(wǎng)環(huán)境中,兩層模型的確是個(gè)不錯(cuò)的方案。由于該模型中,所有的用戶連接都是被保持的,也就是說(shuō)即使在空閑狀態(tài),連接依然存在。所以,用戶的并發(fā)請(qǐng)求數(shù)量有限的。為了解決這個(gè)限制,使得成千上萬(wàn)的用戶可以被無(wú)顧慮地添加,我們選用三層模型。B/S結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者說(shuō)是改進(jìn)的結(jié)構(gòu)。用戶界面完全通過(guò)瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成三層結(jié)構(gòu),是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。1.2.2JSP技術(shù)發(fā)展背景Web技術(shù)的迅猛發(fā)展正推動(dòng)Internet上信息服務(wù)類(lèi)的進(jìn)步。WWW服務(wù)的基礎(chǔ)是HTML語(yǔ)言。這個(gè)系統(tǒng)模塊中用到的JSP技術(shù)是在HTML語(yǔ)言的基礎(chǔ)上使用腳本語(yǔ)言對(duì)網(wǎng)頁(yè)的對(duì)象模型進(jìn)行編程。JSP全稱(chēng)JavaServerPages,它是由SunMicrosystems公司提出、許多公司參與建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。它誕生在1999年6月1日。目前國(guó)內(nèi)外已經(jīng)在廣泛地使用JSP。隨著JAVA語(yǔ)言得到普及,越來(lái)越多的公司開(kāi)始關(guān)注JSP的前景。傳統(tǒng)的動(dòng)態(tài)網(wǎng)頁(yè)制作包括CGI、ASP、JSP三種,而JSP具有明顯的優(yōu)勢(shì)。使用CGI-BINJ接口是一個(gè)最早的動(dòng)態(tài)WEB頁(yè)面問(wèn)題的解決方案。缺點(diǎn),CGI程序必須從CGI接口讀入一長(zhǎng)串的字符串,再?gòu)淖址腥〉盟枰臄?shù)據(jù)并加以處理。過(guò)程十分繁瑣。另一個(gè)缺點(diǎn),除了Perl是解釋語(yǔ)言外,其他都是編譯式的語(yǔ)言。每次修改后,都必須重新編譯一次,這給開(kāi)發(fā)人員帶來(lái)麻煩,增加了工作量。ASP和JSP都能取代CGI使網(wǎng)站建設(shè)和發(fā)展變得簡(jiǎn)單快捷。盡管JSP技術(shù)和ASP在許多方面都有相似的,但仍然存在很多不同之處,其中最本質(zhì)上的區(qū)別在于:兩者是來(lái)源于不同的技術(shù)規(guī)范組織,其實(shí)現(xiàn)的基礎(chǔ),WEB服務(wù)器平臺(tái)要求不相同。1)作為Java平臺(tái)的一部分,JSP擁有Java編程語(yǔ)言“一次編寫(xiě),各處運(yùn)行”的特點(diǎn)。一次寫(xiě)入,之后,可以運(yùn)行在任何具有符合JavaTM語(yǔ)法結(jié)構(gòu)的環(huán)境。取代之過(guò)去單一平臺(tái)開(kāi)發(fā)。ASP主要工作環(huán)境是微軟的IIS應(yīng)用程序結(jié)構(gòu),又因Activex對(duì)象具有平臺(tái)特性,所以ASP技術(shù)不能很容易地實(shí)現(xiàn)在跨平臺(tái)的WEB服務(wù)器的工作。2)從開(kāi)發(fā)人員的角度來(lái)看其區(qū)別在于:ASP僅支持組件對(duì)象模型COM,而JSP技術(shù)提供的組件都是基于JavabeansTM技術(shù)或JSP標(biāo)簽庫(kù)。3)JSP標(biāo)簽可擴(kuò)充性。JSP技術(shù)能夠使用開(kāi)發(fā)者擴(kuò)展JSP標(biāo)簽,JSP開(kāi)發(fā)者能定制標(biāo)簽庫(kù),減少對(duì)腳本語(yǔ)言的依賴(lài)4)生成可重用的組件。JSP基于組件的技術(shù)方法加速了總體開(kāi)發(fā)過(guò)程。JSP組件(Javabeans,或定制的JSP標(biāo)簽)是跨平臺(tái)可重用的。Javabeans組件可以訪問(wèn)數(shù)據(jù)庫(kù),并能以分布式系統(tǒng)模式工作于UNIX和WINDOWS平臺(tái)。5)易于維護(hù)性。基于JSP技術(shù)的應(yīng)用程序比基于ASP的應(yīng)用程序易于維護(hù)和管理。JSP突出的組件技術(shù)使修改內(nèi)容而不影響邏輯或修改邏輯而不影響內(nèi)容變得很容易實(shí)現(xiàn)。2.系統(tǒng)相關(guān)技術(shù)2.1B/S模式介紹B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過(guò)Internet/Intranet模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開(kāi)發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。特別是在.Net這樣的預(yù)編譯語(yǔ)言和AJAX技術(shù)出現(xiàn)之后,B/S架構(gòu)Web軟件更是方便、快捷、高效。2.2三層B/S結(jié)構(gòu)B/S結(jié)構(gòu)是真正的三層結(jié)構(gòu),它以訪問(wèn)Web數(shù)據(jù)庫(kù)為中心,HTTP為傳輸協(xié)議,客戶端通過(guò)瀏覽器(Browser)訪問(wèn)Web服務(wù)器和與其相連的后臺(tái)數(shù)據(jù)庫(kù),我們稱(chēng)之為B/S(Browser/Server)模式。其三級(jí)結(jié)構(gòu)組成如圖所示。客戶端客戶端Web服務(wù)器后臺(tái)數(shù)據(jù)庫(kù)客戶端……圖1系統(tǒng)三級(jí)結(jié)構(gòu)圖圖中從左到右,分為三個(gè)層次:第一層是客戶端即瀏覽器,主要完成客戶和后臺(tái)的交互及最終查詢結(jié)果的輸出功能。在客戶端向指定的Web服務(wù)器提出服務(wù)器請(qǐng)求,Web服務(wù)器用HTTP協(xié)議把所需文件資料傳給用戶,客戶端接受并顯示在WWW瀏覽器上。第二層Web服務(wù)器是功能層,完成客戶的應(yīng)用功能,即Web服務(wù)器接受客戶請(qǐng)求,并與后臺(tái)數(shù)據(jù)庫(kù)連接,進(jìn)行申請(qǐng)?zhí)幚恚缓髮⑻幚斫Y(jié)果返回Web服務(wù)器,再傳至客戶端;第三層數(shù)據(jù)庫(kù)服務(wù)器是數(shù)據(jù)層。數(shù)據(jù)庫(kù)服務(wù)器應(yīng)客戶請(qǐng)求獨(dú)立進(jìn)行各種處理。與傳統(tǒng)的C/S模式相比,B/S結(jié)構(gòu)把處理功能全部移植到了服務(wù)器端,用戶的請(qǐng)求通過(guò)瀏覽器發(fā)出,無(wú)論是使用和數(shù)據(jù)庫(kù)維護(hù)上都比傳統(tǒng)模式更加經(jīng)濟(jì)方便。而且使維護(hù)任務(wù)層次化:管理員負(fù)責(zé)服務(wù)器硬件日常管理和維護(hù),系統(tǒng)維護(hù)人員負(fù)責(zé)后臺(tái)數(shù)據(jù)庫(kù)數(shù)據(jù)更新維護(hù)。由以上比較分析可知,三層結(jié)構(gòu)也可以理解為增加了Web服務(wù)器的C/S模式。2.4JSP技術(shù)介紹JSP(JAVASERVERPAGES)是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。它由HTML代碼和嵌入其中的JAVA代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些JAVA代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器。JSP具備了JAVA技術(shù)的簡(jiǎn)單易用、完全面向?qū)ο蟆⒕哂衅脚_(tái)無(wú)關(guān)性且安全可靠,其在動(dòng)態(tài)網(wǎng)頁(yè)的建設(shè)中有其強(qiáng)大而特別的功能.JSP技術(shù)的優(yōu)點(diǎn)如下:5.4.1將內(nèi)容的生成和顯示進(jìn)行分離。使用JSP技術(shù),Web頁(yè)面開(kāi)發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來(lái)設(shè)計(jì)和格式化最終頁(yè)面。使用JSP標(biāo)識(shí)或者小腳本來(lái)生成頁(yè)面上的動(dòng)態(tài)內(nèi)容(內(nèi)容是根據(jù)請(qǐng)求來(lái)變化的,例如查詢指定學(xué)院的專(zhuān)業(yè)或者某一位學(xué)生參加的文藝活動(dòng))。Web管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用JSP頁(yè)面,而不影響內(nèi)容的生成。生成可重用的組件。絕大多數(shù)JSP頁(yè)面依賴(lài)于可重用的,跨平臺(tái)的組件(JavaBeans或者EnterpriseJavaBeansTM組件)來(lái)執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開(kāi)發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用。5.4.2采用標(biāo)識(shí)簡(jiǎn)化頁(yè)面開(kāi)發(fā)。Web頁(yè)面開(kāi)發(fā)人員不會(huì)都是熟悉腳本語(yǔ)言的編程人員。但JavaServerPage技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識(shí)中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。標(biāo)準(zhǔn)的JSP標(biāo)識(shí)能夠訪問(wèn)和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。通過(guò)開(kāi)發(fā)定制化標(biāo)識(shí)庫(kù),JSP技術(shù)是可以擴(kuò)展的。以上這些使得Web頁(yè)面開(kāi)發(fā)人員能夠使用熟悉的工具來(lái)執(zhí)行特定功能。5.4.3提供所有Servlets的功能。與SERVLETS相比,JSP能提供所有SERVLETS功能,但它比用println書(shū)寫(xiě)和修改HTML更方便。此外,可以更明確的進(jìn)行分工,WEB頁(yè)面設(shè)計(jì)人員編寫(xiě)HTML,只需要留出地方讓SERVLETS程序員插入動(dòng)態(tài)部分即可。2.5AJAX技術(shù)介紹AJAX的全稱(chēng)是AsynchronousJavaScriptandXML,即異步JavaScript和XML。這是一種多項(xiàng)成熟技術(shù)的組合,其目的是讓W(xué)eb應(yīng)用獲得與用戶快速、即時(shí)交互的能力。AJAX所組合的技術(shù),包括對(duì)的分析:?JavaScript,Java腳本語(yǔ)言(注意,此Java非Sun公司的Java)?DHTML,DynamicHTML,動(dòng)態(tài)HTML?XML,ExtensibleMarkupLanguage,可擴(kuò)展標(biāo)記語(yǔ)言?CSS,CascadingStyleSheets,層疊樣式表單?DOM,DocumentObjectModel,文檔對(duì)象模型?微軟的稱(chēng)為XMLHttpRequest的對(duì)象在AJAX技術(shù)下,用戶會(huì)感覺(jué)到網(wǎng)頁(yè)與普通桌面應(yīng)用一樣,響應(yīng)迅速,而不是像傳統(tǒng)網(wǎng)頁(yè)那樣,任何操作都需要等待頁(yè)面的刷新。第一,AJAX可以只刷新部分頁(yè)面,而不是整個(gè)頁(yè)面;第二,AJAX的頁(yè)面刷新是異步的,就是說(shuō),用戶可以繼續(xù)他的其他操作,而不必等候刷新完成。當(dāng)用戶瀏覽一個(gè)基于AJAX的Web應(yīng)用時(shí),用戶的請(qǐng)求被提交給一個(gè)稱(chēng)為AJAX引擎(AJAXEngine)的代理,這個(gè)AJAX引擎負(fù)責(zé)接收用戶請(qǐng)求,從Web服務(wù)器上獲取響應(yīng),并更新瀏覽器內(nèi)容。形象地說(shuō),傳統(tǒng)的Web應(yīng)用中,瀏覽器是直接和Web服務(wù)器打交道的,而在AJAX應(yīng)用中,瀏覽器和Web服務(wù)器之間出現(xiàn)了一個(gè)來(lái)回跑腿的“中介”,而且這個(gè)“中介”相當(dāng)?shù)那诳欤裕軌蚪o瀏覽器提供更好的服務(wù),從而使用戶獲得更滿意的應(yīng)用體驗(yàn)。2.6JDBC技術(shù)介紹本系統(tǒng)為基于Web服務(wù)器的在線管理系統(tǒng),Web服務(wù)器的發(fā)展趨勢(shì)是管理動(dòng)態(tài)信息,而不是靜態(tài)的HTML網(wǎng)頁(yè),因此Web服務(wù)器就必須直接從數(shù)據(jù)庫(kù)中獲取符合要求的數(shù)據(jù),并動(dòng)態(tài)的插入到Web頁(yè)面中,而其中的關(guān)鍵是Web服務(wù)器與數(shù)據(jù)庫(kù)的連接技術(shù)。本系統(tǒng)采用的就是JDBC技術(shù)。JDBC(JavaDatabaseConnectivity——Java數(shù)據(jù)庫(kù)連接)由一組用JAVA語(yǔ)言編寫(xiě)的類(lèi)和借口組成,利用JAVA機(jī)制設(shè)計(jì)的標(biāo)準(zhǔn)SQL數(shù)據(jù)庫(kù)連接接口去訪問(wèn)數(shù)據(jù)庫(kù)。JDBC也是一種規(guī)范,讓各個(gè)數(shù)據(jù)庫(kù)開(kāi)發(fā)商為JAVA程序員提供標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)訪問(wèn)類(lèi)和借口。JDBC與JAVA結(jié)合,是用戶很容易把SQL語(yǔ)言傳送到任何的關(guān)系數(shù)據(jù)庫(kù)中,程序員用它編寫(xiě)的數(shù)據(jù)庫(kù)應(yīng)用軟件和JAVA語(yǔ)言編寫(xiě)的程序具有一樣的特性:一次編寫(xiě),多處運(yùn)行。JDBC大致可以分為以下三個(gè)部分:1、JDBCAPI的主要特點(diǎn)之一是簡(jiǎn)單且容易掌握。它主要由接口組成而不是集成類(lèi),被包含在java.sql和javax.sql兩個(gè)包中。這些接口由提供JDBC驅(qū)動(dòng)的軟件商來(lái)完成。2、JDBC驅(qū)動(dòng)管理器的作用是在JDBC運(yùn)行結(jié)構(gòu)上,提供最基礎(chǔ)的指引功能,即當(dāng)一個(gè)JDBCAPI程序進(jìn)行數(shù)據(jù)庫(kù)調(diào)用時(shí),它會(huì)選擇一個(gè)正確的JDBC驅(qū)動(dòng)程序進(jìn)行連接。3、JDBC驅(qū)動(dòng)的作用是當(dāng)JDBCAPI制作的程序進(jìn)行數(shù)據(jù)調(diào)用時(shí),實(shí)際連接數(shù)據(jù)庫(kù)并進(jìn)行相應(yīng)的處理。JDBC驅(qū)動(dòng)提供JDBCAPI的接口類(lèi)。很多可視化的Java開(kāi)發(fā)工具,如VisualAgeForJava、VisualCafe、J++等都提供了基于JDBC的更具有面向用戶特性的類(lèi)和包。在下文的代碼實(shí)現(xiàn)中將給出在SQLSever中連接數(shù)據(jù)庫(kù)的代碼并深入解釋。2.7SQLSERVER2000簡(jiǎn)介SQLServer2000是微軟公司開(kāi)發(fā)的大型關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它不但可以滿足大型數(shù)據(jù)處理系統(tǒng)對(duì)數(shù)據(jù)儲(chǔ)存量的需求,而且對(duì)于小型企業(yè)和個(gè)人來(lái)說(shuō),也可以作為管理數(shù)據(jù)的簡(jiǎn)易工具。SQLServer2000提供了兩種最基本的服務(wù):SQLServer服務(wù)和SQLServer2000分析服務(wù),它們分別是性能卓越的數(shù)據(jù)庫(kù)引擎和用于決策支持的數(shù)據(jù)分析工具。該版本繼承了SQLServer7.0版本的優(yōu)點(diǎn),同時(shí)又比它增加了許多更先進(jìn)的功能,具有使用方便、可伸縮性好、與相關(guān)軟件集成程度高等優(yōu)點(diǎn),是一個(gè)功能完備的正規(guī)數(shù)據(jù)庫(kù)管理系統(tǒng),是關(guān)系數(shù)據(jù)庫(kù)開(kāi)發(fā)的最好工具。它包括支持開(kāi)發(fā)的引擎,標(biāo)準(zhǔn)的SQL語(yǔ)言,擴(kuò)展的特性等功能。MicrosoftSQLServer2000的優(yōu)點(diǎn)在于它不但可以滿足大型數(shù)據(jù)處理系統(tǒng)對(duì)數(shù)據(jù)存儲(chǔ)量的需求,而且對(duì)于小型企業(yè)和個(gè)人來(lái)說(shuō),也可以作為管理數(shù)據(jù)的簡(jiǎn)易工具。它提供了兩種最基本的服務(wù):SQLServer服務(wù)(SQLServerservice)和SQLServer2000(AnalysisService),它們分別是性能卓越的數(shù)據(jù)庫(kù)引擎和用于決策支持的數(shù)據(jù)分析工具。SQLServer2000在SQLServer7.0版的基礎(chǔ)上擴(kuò)展了的數(shù)據(jù)庫(kù)管理系統(tǒng)的性能、可靠性、質(zhì)量和易用性。由于增加了這些新的功能,因此它成為大規(guī)模聯(lián)機(jī)事務(wù)處理(OLTP),數(shù)據(jù)倉(cāng)庫(kù)和電子商務(wù)應(yīng)用程序的優(yōu)秀數(shù)據(jù)庫(kù)平臺(tái)。MicrosoftSQLServer2000包括以下特性:(1)與因特網(wǎng)的集成,SQLServer2000的數(shù)據(jù)庫(kù)引擎提供了完整的XML支持;(2)可伸縮性和可用性;(3)企業(yè)級(jí)數(shù)據(jù)庫(kù)功能;(4)易于安裝、部署和使用;(5)SQLServer2000中包括析取和分析匯總數(shù)據(jù)以進(jìn)行聯(lián)機(jī)分析處理(OLAP)的工具--數(shù)據(jù)倉(cāng)庫(kù)。鑒于MSSQLServer2000的諸多優(yōu)點(diǎn)和容易使用等特點(diǎn),我們選擇了使用它作為我們開(kāi)發(fā)系統(tǒng)的數(shù)據(jù)庫(kù)管理。藍(lán)天工作室為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案QQ:5990571793.需求分析3.1功能描述本高校班級(jí)管理系統(tǒng)的主要目的是為了方便畢業(yè)之后大家保持聯(lián)系,不會(huì)因?yàn)楸舜朔珠_(kāi)而使得同學(xué)間的感情疏遠(yuǎn)。因此要為班級(jí)成員提供一個(gè)溫馨,友好的操作界面,讓大家進(jìn)入系統(tǒng)感覺(jué)如同走進(jìn)家庭般溫暖,同時(shí)為具有較高權(quán)限的系統(tǒng)管理員提供相應(yīng)的系統(tǒng)功能。高校班級(jí)管理系統(tǒng)主要需要實(shí)現(xiàn)以下基本功能:1.登入功能:系統(tǒng)首頁(yè)提供登入對(duì)話框,輸入用戶名和密碼,系統(tǒng)驗(yàn)證正確后進(jìn)入系統(tǒng),否則提示錯(cuò)誤信息。2.注冊(cè)功能:該功能為瀏覽者提供注冊(cè)功能,在注冊(cè)界面填寫(xiě)相應(yīng)信息,系統(tǒng)驗(yàn)證正確后,成為系統(tǒng)用戶。3.留言功能:所有用戶都具有此功能,它用于用戶發(fā)表留言。4.查看留言功能:所有用戶都具有此功能,用于查看系統(tǒng)中所有成員留言。5.刪除留言功能:該功能只有系統(tǒng)管理員才能使用,用于刪除系統(tǒng)中不需要的留言。6.個(gè)人信息修改功能:所有用戶都具有此功能,用于修改用戶注冊(cè)信息。7.查看班級(jí)信息功能:所有用戶都具有此功能,用于查看當(dāng)前系統(tǒng)信息,如班級(jí)創(chuàng)建者,班級(jí)說(shuō)明,班級(jí)成員總數(shù),留言總數(shù),相片總數(shù)等。8.修改班級(jí)信息功能:該功能只有系統(tǒng)管理員才能使用,用于修改班級(jí)信息。9.上傳相片功能:該功能只有系統(tǒng)管理員才能使用,用于將班級(jí)照片發(fā)布在系統(tǒng)中10.刪除相片功能:該功能只有系統(tǒng)管理員才能使用,用于刪除不需要的照片。11.瀏覽相片功能:所有用戶都具有此功能,用于瀏覽系統(tǒng)發(fā)布的照片。12.發(fā)送短信功能:所有用戶都具有此功能,用于在系統(tǒng)中發(fā)送短信,你可以指定發(fā)送對(duì)象。13.查看短信功能:所有用戶都具有此功能,用于查看是否有自己的短信。14.刪除短信功能:該功能只有系統(tǒng)管理員才能使用,用于刪除不需要的短信。15.發(fā)布班級(jí)新聞功能:該功能只有系統(tǒng)管理員才能使用,用語(yǔ)發(fā)布班級(jí)重要通知等。16.修改班級(jí)新聞功能:該功能只有系統(tǒng)管理員才能使用,用于修改新聞內(nèi)容。17.刪除班級(jí)新聞功能:該功能只有系統(tǒng)管理員才能使用,用于刪除系統(tǒng)中的舊新聞。18.添加教師功能:該功能只有系統(tǒng)管理員才能使用,用于添加教師信息。19.查看教師信息功能:所有用戶都具有此功能,用于查看教師信息,方便用戶與教師取得聯(lián)系。20.查看用戶信息功能:該功能只有系統(tǒng)管理員才能使用,用于查看注冊(cè)的所有用戶信息。21.用戶權(quán)限設(shè)置功能:該功能只有系統(tǒng)管理員才能使用,用于設(shè)置用戶權(quán)限,是否將用戶提升為管理員,或者將管理員降為一般用戶。3.2系統(tǒng)結(jié)構(gòu)圖依據(jù)需求分析描述,高校班級(jí)管理系統(tǒng)大體上可以分為7個(gè)模塊:用戶登入模塊、用戶管理模塊、留言管理模塊、信息管理模塊、新聞管理模塊、短消息管理模塊和相冊(cè)管理模塊。如圖2所示。圖2系統(tǒng)結(jié)構(gòu)圖藍(lán)天工作室為您提供最優(yōu)秀的計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文解決方案QQ:5990571794系統(tǒng)設(shè)計(jì)4.1各模塊設(shè)計(jì)4.1.1登錄模塊設(shè)計(jì)用戶身份驗(yàn)證。用戶進(jìn)入系統(tǒng),首先需要進(jìn)行身份驗(yàn)證。如果通過(guò)了身份驗(yàn)證,則為合法用戶,同時(shí)其帳號(hào)和權(quán)限等資料將會(huì)保存在Session對(duì)象,Session對(duì)象儲(chǔ)存的信息是局部的,隨用戶不同而不同的。當(dāng)用戶訪問(wèn)系統(tǒng)的各個(gè)子系統(tǒng)時(shí),系統(tǒng)自動(dòng)從Session對(duì)象中獲取用戶的資料,而無(wú)須將用戶的資料作為請(qǐng)求方法、參數(shù)名、參數(shù)值追加到URL中。這樣可以避免用戶惡意修改URL中的值非法訪問(wèn)。Session對(duì)象中的變量設(shè)置:Session[User_ID]用戶名,Session[sign]用戶權(quán)限。模塊設(shè)計(jì)流程如圖所示。用戶登錄過(guò)程是必須的,因?yàn)橹挥羞@樣才能從數(shù)據(jù)庫(kù)中得到用戶名和權(quán)限。.圖3登入驗(yàn)證流程圖4.1.2班級(jí)信息管理功能的設(shè)計(jì)。只有管理員才可以對(duì)班級(jí)信息進(jìn)行管理,用戶只能查看班級(jí)信息而不能修改,班級(jí)宣言限制為200字以內(nèi)并不能為空,系統(tǒng)將判斷新班級(jí)宣言是否為空或超過(guò)200字,如果數(shù)據(jù)為空或超過(guò)200字則提示錯(cuò)誤,返回班級(jí)信息管理頁(yè)面,班級(jí)名稱(chēng)、創(chuàng)建人、入學(xué)年份同上。否則,班級(jí)信息修改成功,班級(jí)信息還包括了對(duì)新聞、留言、相片和成員總數(shù)和最新更新的動(dòng)態(tài)統(tǒng)計(jì)。此模塊的設(shè)計(jì)流程如圖所示。圖4班級(jí)信息修改流程圖4.1用戶管理功能設(shè)計(jì)。該功能只有系統(tǒng)管理員才能使用此功能,包括四部分:一是用戶查詢功能,二是用戶權(quán)限管理,三是用戶刪除。用戶查詢功能:該功能方便使用者查找親友同學(xué),還可以統(tǒng)計(jì)出目前班級(jí)擁有多少成員。此項(xiàng)功能是根據(jù)使用者輸入的關(guān)鍵字遍歷數(shù)據(jù)庫(kù),查找有無(wú)匹配的記錄。如果記錄存在將記錄輸出到用戶瀏覽端,否則顯示“暫無(wú)類(lèi)似用戶信息”。用戶權(quán)限管理功能:該功能方便管理員認(rèn)命其他用戶為管理員,這樣不僅能減少自己的工作量,也能更好的維護(hù)網(wǎng)站,如果發(fā)現(xiàn)某管理員利用權(quán)限進(jìn)行非法活動(dòng)時(shí)超級(jí)管理員可以取消掉該管理員的管理權(quán)限。用戶刪除功能,該功能使管理員能處理那些利用本網(wǎng)站進(jìn)行非法活動(dòng)的用戶,刪除其用戶信息。此模塊設(shè)計(jì)流程如圖所示。圖5用戶管理流程圖4.1.4新聞管理功能。該功能只用系統(tǒng)管理員才能使用,包括三部分,一是發(fā)布新聞,二是修改新聞,三是刪除新聞。發(fā)布新聞功能:該功能的實(shí)現(xiàn)是從新聞添加頁(yè)面獲取到新聞表單信息,然后調(diào)用相應(yīng)方法進(jìn)行處理,最后更新至數(shù)據(jù)庫(kù)。修改新聞功能:該功能的實(shí)現(xiàn)是先獲取該新聞編號(hào),然后使用SQL語(yǔ)言遍歷數(shù)據(jù)庫(kù)中有無(wú)該新聞?dòng)涗洠绻涗洿嬖冢瑢⒂涗浶畔⒎湃胄侣剬?duì)象實(shí)體內(nèi),管理員在JSP頁(yè)面獲取新聞信息,再進(jìn)行修改,其后操作類(lèi)似添加新聞。新聞刪除功能:該功能的實(shí)現(xiàn)需要使用SQL語(yǔ)言遍歷數(shù)據(jù)庫(kù)中有無(wú)新聞?dòng)涗洠绻涗洿嬖冢瑒t把記錄信息放入新聞對(duì)象實(shí)體,管理員可在頁(yè)面查看記錄并批量刪除。模塊設(shè)計(jì)流程如圖所示。圖6新聞管理流程圖4.1班級(jí)相冊(cè)管理功能設(shè)計(jì)。作為班級(jí)網(wǎng)站應(yīng)該有上傳相片的能力,班級(jí)相冊(cè)管理功能的設(shè)計(jì)正是為班級(jí)管理員設(shè)置的管理功能之一。其中包括二部分,一是上傳相片,二是刪除相片。1)上傳相片功能:該功能方便管理員批量上傳班級(jí)活動(dòng)的相關(guān)照片,管理員先選擇好要上傳的照片,點(diǎn)擊上傳后,通過(guò)JSP頁(yè)面處理生成縮放的新圖,然后把原圖和新圖放入服務(wù)器端的上傳文件夾中,然后把照片信息存入數(shù)據(jù)庫(kù),上傳完成。2)刪除相片功能:該功能的實(shí)現(xiàn)需要使用SQL語(yǔ)言遍歷數(shù)據(jù)庫(kù)中有無(wú)相片記錄,如果記錄存在,則把記錄信息放入相片對(duì)象實(shí)體,管理員在頁(yè)面查看記錄并刪除。模塊設(shè)計(jì)流程如圖所示。圖7相冊(cè)管理流程圖4.1班級(jí)留言管理功能設(shè)計(jì)。作為班級(jí)網(wǎng)站應(yīng)該具備的能力,班級(jí)留言管理功能的設(shè)計(jì)正是為班級(jí)管理員設(shè)置的管理功能之一。其中包括二部分,一是發(fā)表、查看留言,二是刪除留言。發(fā)表、查看留言功能:該功能是作為網(wǎng)站成員之間交流信息的重要載體,用戶可以在留言頁(yè)面發(fā)表留言,用戶如果沒(méi)有登陸網(wǎng)站,則默認(rèn)為“游客”身份,只能使用該名發(fā)表留言,不能使用其它用戶名進(jìn)行留言,登陸網(wǎng)站后則用戶可直接發(fā)表留言,但只能使用自己的用戶名進(jìn)行發(fā)表。刪除留言功能:該功能的實(shí)現(xiàn)需要使用SQL語(yǔ)言遍歷數(shù)據(jù)庫(kù)中有無(wú)留言記錄,如果記錄存在,則把記錄信息放入相片對(duì)象實(shí)體,管理員可在管理頁(yè)面查看記錄并批量刪除。模塊設(shè)計(jì)流程如圖所示。圖8留言管理流程圖4.1.7短消息管理模塊短消息管理功能設(shè)計(jì)。包括三部分,一是發(fā)送短消息,二是查看短消息,三是刪除短消息。發(fā)送短消息功能:該功能是作為網(wǎng)站成員之間交流信息的另一重要載體,用戶可以在短消息頁(yè)面發(fā)送短消息,用戶如果沒(méi)有登陸網(wǎng)站,則不能訪問(wèn)短消息頁(yè)面,因而無(wú)法發(fā)送短消息,登陸網(wǎng)站后用戶可向其他用戶發(fā)送短消息,收件人必須是數(shù)據(jù)庫(kù)內(nèi)現(xiàn)有的用戶名。查看短消息功能:該功能的實(shí)現(xiàn)需要先查看短消息列表,點(diǎn)擊其中一個(gè)短消息標(biāo)題即可查看詳細(xì)內(nèi)容。刪除短消息功能:該功能的實(shí)現(xiàn)需要使用SQL語(yǔ)言遍歷數(shù)據(jù)庫(kù)中有無(wú)該用戶短消息記錄,如果記錄存在,則把記錄信息放入短消息對(duì)象實(shí)體,用戶可在短消息管理頁(yè)面查看記錄并批量刪除。模塊設(shè)計(jì)流程如圖所示。圖9短消息管理流程圖4.3數(shù)據(jù)庫(kù)設(shè)計(jì)4.2.1系統(tǒng)數(shù)據(jù)流分析根據(jù)上面的模塊功能分析與設(shè)計(jì)可知,有關(guān)數(shù)據(jù)操作的對(duì)象有2個(gè),實(shí)體有7個(gè)。兩個(gè)對(duì)象分別為用戶和管理員,7個(gè)實(shí)體分別為用戶信息表、短消息信息表、班級(jí)信息表、班級(jí)新聞信息表、班級(jí)留言信息表、班級(jí)相冊(cè)信息表和教師信息表。系統(tǒng)總體數(shù)據(jù)流如圖所示。圖10系統(tǒng)數(shù)據(jù)流圖4.2系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)是系統(tǒng)功能實(shí)現(xiàn)的基礎(chǔ)。制作數(shù)據(jù)庫(kù)表首先要確定實(shí)體的屬性和實(shí)體間的關(guān)系。數(shù)據(jù)庫(kù)要存儲(chǔ)的班級(jí)信息、短消息信息、新聞信息、相片信息、留言信息、教師信息和用戶信息,這些信息是班級(jí)、短消息、新聞、相片、留言、教師和用戶的屬性。圖11用戶E-R圖圖12班級(jí)信息E-R圖圖13短消息E-R圖圖14教師E-R圖圖15留言E-R圖圖16相冊(cè)E-R圖圖17新聞E-R圖4.2.3實(shí)體關(guān)系E-R圖一個(gè)用戶可以發(fā)表若干的留言,一個(gè)留言只能屬于一個(gè)用戶;一個(gè)用戶可以有若干的短消息,一個(gè)短消息只能屬于一個(gè)用戶;一個(gè)管理員可以管理若干的用戶,一個(gè)用戶可以被若干的管理員所管理;一個(gè)管理員可以管理若干的新聞,一個(gè)新聞可以被若干的管理員所管理;一個(gè)管理員可以管理若干的相片,一個(gè)相片可以被若干的管理員所管理;一個(gè)管理員可以管理若干的教師信息,一個(gè)教師信息可以被若干的管理員所管理。實(shí)體間關(guān)系如圖所示。用戶用戶管理員短消息留言新聞班級(jí)信息教師通訊錄發(fā)表1N發(fā)送N1管理NM管理1N管理MN管理MN管理MN管理MN管理相片NM圖18實(shí)體關(guān)系E-R圖4.2.4數(shù)據(jù)庫(kù)主要表結(jié)構(gòu)說(shuō)明用戶信息表{帳號(hào),密碼,真實(shí)姓名,性別,生日,權(quán)限,是否鎖定,Email,個(gè)人主頁(yè),注冊(cè)時(shí)間,聯(lián)系電話,手機(jī)號(hào)碼,通訊地址,QQ,自我介紹,所屬班級(jí)}班級(jí)信息表{班級(jí)編號(hào),班級(jí)名稱(chēng),創(chuàng)建日期,班級(jí)人數(shù)}教師信息表{教師編號(hào),教師姓名,所屬學(xué)院,Email,辦公地點(diǎn),手機(jī)號(hào)碼,聯(lián)系電話,通訊地址}短消息信息表{消息編號(hào),發(fā)送者賬號(hào),接收者賬號(hào),標(biāo)題,內(nèi)容,發(fā)送時(shí)間,是否閱讀}班級(jí)新聞信息表{新聞編號(hào),標(biāo)題,內(nèi)容,發(fā)布時(shí)間}班級(jí)相冊(cè)信息表{圖片編號(hào),所屬班級(jí),圖片名稱(chēng),存儲(chǔ)路徑,圖片介紹}班級(jí)留言信息表{留言編號(hào),留言者賬號(hào),所屬班級(jí),留言內(nèi)容,留言時(shí)間}1、用戶信息表(members)記錄所有的用戶信息。在此表中,每一條記錄都是一個(gè)用戶,其中User_ID是用戶名,并且含有相對(duì)應(yīng)的信息,在表中作為唯一標(biāo)識(shí)。表1用戶信息表members序號(hào)字段名稱(chēng)字段含義類(lèi)型寬度是否為空備注1User_ID用戶名varchar16NOPrimarykey2Password密碼Varchar16NO3Sex性別Varchar2NO4Realname真實(shí)姓名Varchar16YES5Birthday出生日IntYES從01至316Birthmonth出生月IntYES從01至127Email電子郵箱地址Varchar40NO8AddTime注冊(cè)時(shí)間Varchar50NO9M手機(jī)號(hào)碼Varchar15YES10Phone家庭電話Varchar15YES11Address家庭住址Varchar40YES12Introduction自我介紹Varchar500YES13Locked鎖定用戶EnumNO14QQQQInt10YES2、留言信息表(word)留言信息表記錄了用戶在班級(jí)中的留言信息,“Word_ID”為主鍵。表2班級(jí)留言信息表word序號(hào)字段名稱(chēng)字段含義類(lèi)型寬度是否為空備注1Word_ID留言編號(hào)Int10NOPrimarykey2User_ID留言者編號(hào)Varchar16NOForeignkey3Time留言時(shí)間TimestampNO4Content留言內(nèi)容Varchar500NO3、教師信息表(communicate)包含了教師通訊信息,其中Teacher_ID——“教師編號(hào)”是系統(tǒng)分配的唯一標(biāo)識(shí),在整個(gè)教師通訊錄表存儲(chǔ)的數(shù)據(jù)里是互不相同的。表3教師通訊錄表communicate序號(hào)字段名稱(chēng)字段含義類(lèi)型寬度是否為空備注1Teacher_ID教師編號(hào)Int4NOPrimarykey2Realname教師姓名Varchar16NO3Academic所在學(xué)院Varchar16NO4Email電子郵箱Varchar40YES5Office辦公地址Varchar40YES6M手機(jī)號(hào)碼Varchar15YES7Phone聯(lián)系電話Varchar15YES8Address家庭住址Varchar40YES4、短消息信息表(messages)是用戶管理短消息和管理員給用戶發(fā)送系統(tǒng)消息用的表,每一條記錄代表一封郵件。其中id——“郵件編號(hào)”是系統(tǒng)為郵件分配的唯一標(biāo)識(shí)符,是此表的唯一標(biāo)識(shí)。表4短消息表messages序號(hào)字段含義類(lèi)型寬度是否為空備注1Id惟一編號(hào)Numeric4NOPrimarykey2Sender發(fā)件人Varchar16NO3Incept收件人Varchar16NO4Title主題Varchar50NO5Content內(nèi)容Varchar2000NO6Flag郵件標(biāo)志int4NO7Sendtime發(fā)送時(shí)間Varchar50NO5、新聞信息表(notes)記錄系統(tǒng)的新聞信息。Note_ID——“新聞編號(hào)”是系統(tǒng)為其分配的唯一標(biāo)識(shí)。表5班級(jí)新聞表notes序號(hào)字段名稱(chēng)字段含義類(lèi)型寬度是否為空備注1Note_ID新聞編號(hào)Int4NOPrimarykey2Body新聞內(nèi)容Varchar1000NO3Addtime發(fā)布時(shí)間Varchar50NO4Title新聞標(biāo)題Varchar50NO6、相冊(cè)信息表(up_imges)記錄相冊(cè)信息。ID—相片編號(hào)是系統(tǒng)為其分配的唯一標(biāo)識(shí)。表6相冊(cè)信息表up_imges序號(hào)字段名稱(chēng)字段含義類(lèi)型寬度是否為空備注1ID相片編號(hào)int4NOPrimarykey2times上傳時(shí)間Varchar503Path相片位置Varchar60NO4ip上傳者IPVarchar1007、班級(jí)信息表(classes)記錄班級(jí)信息。Class_ID——“班級(jí)編號(hào)”是系統(tǒng)為其分配的唯一標(biāo)識(shí)。它在整個(gè)班級(jí)信息表存儲(chǔ)的數(shù)據(jù)里是互不相同的,而且在系統(tǒng)的許多其它表里也要用到它。表7班級(jí)信息表classes序號(hào)字段名稱(chēng)字段含義類(lèi)型寬度是否為空備注1Class_ID班級(jí)編號(hào)Int4NOPrimarykey2Classname班級(jí)名稱(chēng)Varchar16NO3Classmaker創(chuàng)建者Varchar16NOForeignkey4Registtime創(chuàng)建時(shí)間TimestampNO5Number成員人數(shù)Int46Classtop班級(jí)宣言Varchar200YES5.系統(tǒng)詳細(xì)設(shè)計(jì)5.1登錄模塊網(wǎng)頁(yè)中建立用戶登錄機(jī)制,為的是限制未經(jīng)過(guò)登錄的瀏覽者不能查看用戶信息、收發(fā)短消息。讓用戶以帳號(hào)方式登錄網(wǎng)頁(yè)是一種可行的網(wǎng)頁(yè)管理方法。在這個(gè)系統(tǒng)模塊的后臺(tái)數(shù)據(jù)庫(kù)中建立membser表,用來(lái)對(duì)用戶的登錄帳號(hào)、密碼等信息加以保存。此處設(shè)置了用戶對(duì)象的session值。通過(guò)獲取session值,遍歷數(shù)據(jù)庫(kù),可以確定用戶是否合法和用戶在班級(jí)中的權(quán)限。運(yùn)行效果如圖所示。圖19用戶登錄界面5.2用戶權(quán)限管理管理員對(duì)班級(jí)日常工作的維護(hù)和管理的作用,角色權(quán)限高于普通的成員,那么需要特定的屬性來(lái)標(biāo)識(shí)管理員的身份。用戶信息表中sign字段,若為管理員此列為“1”,否則此列為“0”。圖20權(quán)限管理界面5.3刪除功能的實(shí)現(xiàn)主要技術(shù)環(huán)節(jié)是如何有效地與數(shù)據(jù)庫(kù)連接,并通過(guò)使用SQL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。刪除新聞、相片、教師、留言和用戶信息是管理員權(quán)限的一項(xiàng)重要功能。設(shè)計(jì)的實(shí)施如下所述。從表單中取得字符串,然后查詢數(shù)據(jù)庫(kù)有無(wú)與其相等的記錄。如果有,按下刪除鍵可以將其刪除,如果記錄不存在,返回用戶信息,并可以繼續(xù)重新操作。刪除新聞、留言、相片處理方法類(lèi)似用戶刪除操作。此處從表單中取出客戶端的輸入值必須被轉(zhuǎn)換成與數(shù)據(jù)庫(kù)中字段類(lèi)型相匹配的類(lèi)型,否則不能夠正確的進(jìn)行數(shù)據(jù)庫(kù)遍歷。用戶刪除運(yùn)行效果如圖所示:圖21用戶刪除界面5.4查詢功能的實(shí)現(xiàn)主要技術(shù)環(huán)節(jié)是如何有效地與數(shù)據(jù)庫(kù)連接,并通過(guò)使用SQL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。如果用戶想要查找某人的信息或者想尋找某個(gè)教師信息,那么這項(xiàng)功能正好滿足使用者的需要。設(shè)計(jì)思路是從表單中提取用戶輸入的字符,連接并查詢數(shù)據(jù)庫(kù),如果查找到數(shù)據(jù)庫(kù)中存在相匹配的記錄,將其記錄輸出,否則返回一條用戶信息“不存在”。

具體流程:if(表單為空)

{

查詢數(shù)據(jù)庫(kù)表

}else(不為空)

{

查詢數(shù)據(jù)庫(kù)中有無(wú)匹配的記錄DBConnectdbc=newDBConnect("select*frommemberswhereUser_IDlike?");dbc.setString(1,("%"+User_ID.trim()+"%"));ResultSetrs=dbc.executeQuery();

if(!rs.next())//遍歷到數(shù)據(jù)庫(kù)末沒(méi)有匹配記錄

{

返回給用戶信息:沒(méi)找到“”

}

else(記錄存在)

{

Vector<User>userVector=newVector<User>();//新建用戶對(duì)象 do{ //此處對(duì)USER的各種屬性進(jìn)行賦值 UsertempUser=newUser();//實(shí)例化對(duì)象 tempUser.setUser_ID(rs.getString(1));……… tempUser.setSign(rs.getInt(17)); userVector.add(tempUser);//添加用戶對(duì)象 } while(rs.next()); dbc.close();//關(guān)閉數(shù)據(jù)庫(kù) returnuserVector;//返回對(duì)象}5.5留言功能的實(shí)現(xiàn)此模塊中通過(guò)獲取用戶的session值來(lái)確定數(shù)據(jù)庫(kù)操作的對(duì)象。用戶可以使用這個(gè)功能在本班能留言。具體實(shí)現(xiàn)功能代碼如下:publicstaticvoidaddWord(HttpServletRequestrequest) throwsUserAlreadyExistException,Exception{ StringUser_ID=ParamUtil.getString(request,"User_ID",""); Stringcontext=ParamUtil.getString(request,"context",""); StringAddTime=Format.getDateTime(); DBConnectdbc=newDBConnect();//連接數(shù)據(jù)庫(kù)對(duì)象 if(!"游客".equals(User_ID)){ HttpSessionsession=request.getSession(true); Useruser=(User)session.getAttribute("User"); if(user==null||"".equals(user)) thrownewException("對(duì)不起,你還未登陸,請(qǐng)先登陸網(wǎng)站."); Stringuserid=user.getUser_ID(); if(!userid.equals(User_ID)) thrownewException("對(duì)不起,你輸入的用戶名與你登陸的用戶名不一致,請(qǐng)重新輸入。"); } dbc.prepareStatement("insertintoword(User_ID,context,AddTime)values(?,?,?)"); dbc.setString(1,User_ID); dbc.setString(2,context); dbc.setString(3,AddTime); dbc.executeUpdate(); dbc.close(); }留言功能運(yùn)行效果如圖所示。圖22用戶留言界面5.6用戶權(quán)限確認(rèn)當(dāng)用戶點(diǎn)擊進(jìn)入班級(jí)時(shí),他是普通成員還是管理員,他應(yīng)該有哪些操作權(quán)限,此時(shí)識(shí)別用戶身份具有非常重要的意義,只有認(rèn)清用戶的身份之后才能確定該用戶能夠執(zhí)行哪些操作。這也是本系統(tǒng)模塊設(shè)計(jì)的重要環(huán)節(jié)之一。功能實(shí)現(xiàn)使用了數(shù)據(jù)庫(kù)表關(guān)聯(lián)操作。首先取得用戶Session值,然后執(zhí)行如下語(yǔ)句:if(curUser.getSign()!=1)thrownewException("本頁(yè)面為系統(tǒng)管理員專(zhuān)用,請(qǐng)?jiān)谟脩艚缑娴顷憽?lt;br><br><ahref=../pages/login.jsp>--點(diǎn)此進(jìn)入</a>");被標(biāo)識(shí)為管理員者才有使用刪除、鎖定等功能的特權(quán)。權(quán)限確認(rèn)運(yùn)行效果如圖所示。圖23用戶權(quán)限確認(rèn)圖5.7數(shù)據(jù)庫(kù)的詳細(xì)設(shè)計(jì)5.7.1安裝驅(qū)動(dòng)程序本系統(tǒng)模塊用JSP技術(shù)編寫(xiě),那么就必須借助與JDBC(JavaDataBaseConnectivity)來(lái)操作數(shù)據(jù)庫(kù)。JDBC是一組API(ApplicationProgrammingInterface),即應(yīng)用程序設(shè)計(jì)接口。JDBC共有四種類(lèi)型:類(lèi)型一,利用橋連接器(Bridge)的概念連接數(shù)據(jù)庫(kù)。類(lèi)型二,運(yùn)用由數(shù)據(jù)庫(kù)廠商提供的用于操作數(shù)據(jù)庫(kù)的API函數(shù)。類(lèi)型三,這類(lèi)驅(qū)動(dòng)程序通過(guò)網(wǎng)絡(luò)協(xié)議與中間件連通,中間件負(fù)責(zé)轉(zhuǎn)換數(shù)據(jù)庫(kù)操作信息。類(lèi)型四,這類(lèi)驅(qū)動(dòng)不通過(guò)任何中間件,而直接以Java數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序來(lái)執(zhí)行數(shù)據(jù)庫(kù)的訪問(wèn)。相比之下,此系統(tǒng)選擇第三種類(lèi)型的數(shù)據(jù)庫(kù)驅(qū)動(dòng)。它的優(yōu)點(diǎn)更適合這個(gè)系統(tǒng)創(chuàng)建與數(shù)據(jù)庫(kù)的連接。SERVER的JDBC驅(qū)動(dòng)程序放在項(xiàng)目目錄\class\WebRoot\WEB-INF\lib中。Java環(huán)境并不能自動(dòng)找到該驅(qū)動(dòng)程序。應(yīng)用時(shí)可以把驅(qū)動(dòng)程序壓縮包復(fù)制到ApacheTomcat服務(wù)器下的class目錄中。5.7.2建立用戶JSP與數(shù)據(jù)庫(kù)連接的時(shí)候,需要使用一個(gè)合法的用戶登錄數(shù)據(jù)庫(kù)。此系統(tǒng)模塊在數(shù)據(jù)庫(kù)中建立用戶名為sa。使用控制命令:createusersaidentifiedbysa;

grantconnect,resourcetosa.建立并授予用戶sa權(quán)限。密碼為sa。用戶的缺省表空間為SYSTEM表空間。5.7.3操作數(shù)據(jù)庫(kù)

在執(zhí)行查詢動(dòng)作之前,必須在程序中使用Connection對(duì)象的createStatement方法,建立Statement對(duì)象,以代表執(zhí)行的SQL語(yǔ)句。連接驅(qū)動(dòng),用戶登錄數(shù)據(jù)庫(kù)Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

Stringm_url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=class";

Stringm_user="sa";

//sa為數(shù)據(jù)庫(kù)用戶名。

Stringm_password="sa";

//數(shù)據(jù)庫(kù)密碼sa。

ConnectionconDB=DriverManager.getConnection(m_url,m_user,m_password);

建立Statement對(duì)象

Statementst=conDB.createStatement();

執(zhí)行查詢動(dòng)作,并將查詢結(jié)果以Resultset對(duì)象返回。

Resultset

rs=st.executeQuery("select*frommembers");

取得字段數(shù)據(jù)。使用ResultSet類(lèi)的get方法,可以從ResultSet對(duì)象中,取得當(dāng)前記錄中各個(gè)字段的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論