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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

{

查詢數據庫表

}else(不為空)

{

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

if(!rs.next())//遍歷到數據庫末沒有匹配記錄

{

返回給用戶信息:沒找到“”

}

else(記錄存在)

{

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

grantconnect,resourcetosa.建立并授予用戶sa權限。密碼為sa。用戶的缺省表空間為SYSTEM表空間。5.7.3操作數據庫

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

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

Stringm_user="sa";

//sa為數據庫用戶名。

Stringm_password="sa";

//數據庫密碼sa。

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

建立Statement對象

Statementst=conDB.createStatement();

執(zhí)行查詢動作,并將查詢結果以Resultset對象返回。

Resultset

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

取得字段數據。使用ResultSet類的get方法,可以從ResultSet對象中,取得當前記錄中各個字段的

溫馨提示

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

評論

0/150

提交評論