[畢業(yè)論文]JAVA學(xué)生成績管理系統(tǒng)+詳細(xì)論文_第1頁
[畢業(yè)論文]JAVA學(xué)生成績管理系統(tǒng)+詳細(xì)論文_第2頁
[畢業(yè)論文]JAVA學(xué)生成績管理系統(tǒng)+詳細(xì)論文_第3頁
[畢業(yè)論文]JAVA學(xué)生成績管理系統(tǒng)+詳細(xì)論文_第4頁
[畢業(yè)論文]JAVA學(xué)生成績管理系統(tǒng)+詳細(xì)論文_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 摘 要目前,學(xué)校工作繁雜、資料重多,管理信息系統(tǒng)已進(jìn)入高校,但還未普及,而對于學(xué)生成績管理來說,還沒有一套完整的、統(tǒng)一的系統(tǒng)。因此,開發(fā)一套適和大眾的、兼容性好的系統(tǒng)是很有必要的。根據(jù)開發(fā)要求,它主要應(yīng)用于教育系統(tǒng),完成對日常學(xué)生成績的錄入查詢更新刪除等管理操作,實(shí)現(xiàn)學(xué)生成績管理的計(jì)算機(jī)化。開發(fā)學(xué)生成績管理系統(tǒng)可使學(xué)院教職員工減輕工作壓力,比較系統(tǒng)地對教務(wù)、教學(xué)上的各項(xiàng)服務(wù)和信息進(jìn)行管理,同時(shí),可以減少勞動(dòng)力的使用,加快查詢速度、加強(qiáng)管理。本論文敘述了現(xiàn)在高校學(xué)生成績管理的現(xiàn)狀以及java語言和一些開源框架的概況。重點(diǎn)介紹了學(xué)生成績管理系統(tǒng)的實(shí)現(xiàn)過程:包括系統(tǒng)分析、 系統(tǒng)調(diào)查、 數(shù)據(jù)庫設(shè)計(jì)、

2、功能設(shè)計(jì)、系統(tǒng)物理配置方案、 系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測試以及系統(tǒng)功能簡介。關(guān)鍵詞:jsp,j2ee,學(xué)生成績維護(hù)系統(tǒng),mysql,hibernate,struts abstract at present, the school work is numerous and diverse, material is heavy, the management information system enters into the university, but does not popular, but regarding the student achievement management, does no

3、t have a set completely and unification system. therefore, develops a set suitable,populace and compatible good system is very necessary. according to the development request, it mainly applies in the educational system, completes to daily student achievement maintenance operations and so on input i

4、nquiry renewal deletion, realizes student achievement maintenance computerizing. developing the student achievement maintenance system can let the institute teaching and administrative staff to reduce the working pressure, compare with systematically to the educational administration, teaching each

5、service and the information carries on the management, simultaneously, can reduce the labor force which is used, speed up the inquiry speed, strengthen the management. the paper narrated the present universitys study result management in the present situation and the java language and some opens the

6、 source frame of the survey. introduced the realizes process of the student achievement management system: including the system analysis、the system investigation、the database design、the functional design、the system physics disposition plan、the system realize、the system test and the system introducti

7、on.key words: jsp, j2ee, student performance management system, mysql,hibernate, struts 目 錄第一章 緒 論41.2 項(xiàng)目開發(fā)的目標(biāo)41.3 項(xiàng)目提出的意義4第二章 系統(tǒng)開發(fā)主要運(yùn)用技術(shù)及開發(fā)模式62.1 系統(tǒng)開發(fā)技術(shù)介紹62.1.1 jsp技術(shù)62.1.2 javabeans 技術(shù)72.1.3 html及javascript技術(shù)72.1.4 struts技術(shù)92.2開發(fā)工具介紹92.2.1 eclipse簡介92.2.2 tomcat簡介102.3開發(fā)模式介紹102.4 數(shù)據(jù)庫技術(shù)132.4.1 關(guān)系數(shù)據(jù)

8、庫模型132.4.2 規(guī)范化132.4.3 mysql 簡介142.5 軟硬件環(huán)境15第三章 系統(tǒng)需求分析163.2系統(tǒng)構(gòu)架163.3 用戶需求173.3.1學(xué)生的需求173.3.2老師的需求173.3.3管理員的需求173.4 數(shù)據(jù)需求分析173.4.1 數(shù)據(jù)字典183.4.2 e-r 圖19第四章 系統(tǒng)總體設(shè)計(jì)214.1 系統(tǒng)功能結(jié)構(gòu)圖214.2系統(tǒng)總體設(shè)計(jì)思想214.3系統(tǒng)設(shè)計(jì)分析224.4 數(shù)據(jù)庫設(shè)計(jì)224.4.1 數(shù)據(jù)庫的概要設(shè)計(jì)224.4.2 數(shù)據(jù)庫表的設(shè)計(jì)23第五章 系統(tǒng)詳細(xì)設(shè)計(jì)255.1 登錄功能設(shè)計(jì)255.2 學(xué)員管理功能255.3 教師管理功能265.4 教務(wù)管理員功能27

9、5.5用戶返回功能28第六章 系統(tǒng)實(shí)現(xiàn)與測試296.1登錄身份的實(shí)現(xiàn)296.2學(xué)生登陸功能的實(shí)現(xiàn)296.3教師登陸功能的實(shí)現(xiàn)306.4教務(wù)管理員功能的實(shí)現(xiàn)326.5 系統(tǒng)測試346.5.1 測試原理346.5.2 測試方法356.5.3 測試的架構(gòu)366.5.3 測試環(huán)境的搭建376.5.4 測試結(jié)果39第七章 總 結(jié)40致 謝41參考文獻(xiàn)42第一章 緒 論1.1 項(xiàng)目開發(fā)背景 一直以來學(xué)生的成績管理是學(xué)校工作中的一項(xiàng)重要內(nèi)容,我國的大中專院校的學(xué)生成績管理水平普遍不高。隨著辦學(xué)規(guī)模的擴(kuò)大和招生人數(shù)的增加,建立一個(gè)成績維護(hù)系統(tǒng)是非常必要的。普通的成績管理已不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多的

10、人力和物力。在當(dāng)今信息時(shí)代這種傳統(tǒng)的管理方法必然被以計(jì)算機(jī)為基礎(chǔ)的信息管理系統(tǒng)所代替。為了提高成績管理的效率,我選擇了學(xué)生成績管理系統(tǒng)作為畢業(yè)設(shè)計(jì)的課題。 本系統(tǒng)在大多數(shù)成績管理系統(tǒng)的基礎(chǔ)上,主要增加了教師對成績的操作,教師改完試卷后不用在往學(xué)院的教務(wù)處辦公室報(bào)送成績,可以直接的把成績上傳到網(wǎng)絡(luò)上,學(xué)生也可以方便快速的查詢到自己的成績,考試后教務(wù)管理人員也不必總呆在學(xué)院的辦公室,他們都不受時(shí)間,位置,空間的限制,只要有上網(wǎng)的條件,在家里就可以完成有關(guān)成績的錄入,更新,管理,查詢和刪除。本系統(tǒng)將會(huì)改變以前靠手工管理學(xué)生成績的狀況,提高工作效率。希望能為老師和學(xué)校的工作帶來便利。1.2 項(xiàng)目開發(fā)的

11、目標(biāo) 建立學(xué)生成績管理系統(tǒng),采用計(jì)算機(jī)對學(xué)生成績進(jìn)行管理,進(jìn)一步提高辦學(xué)效益和現(xiàn)代化水平。幫助廣大教師提高工作效率,實(shí)現(xiàn)學(xué)生成績維護(hù)工作流程的系統(tǒng)化、規(guī)范化和自動(dòng)化。為了使系統(tǒng)在學(xué)院的管理中發(fā)揮更大的作用,實(shí)現(xiàn)工作過程的計(jì)算機(jī)化,提高工作效率和工作質(zhì)量,現(xiàn)提出如下的系統(tǒng)開發(fā)目標(biāo): (1)系統(tǒng)應(yīng)具有實(shí)用性、可靠性和適用性,同時(shí)注意到先進(jìn)性。 (2)對各個(gè)數(shù)據(jù)庫進(jìn)行動(dòng)態(tài)管理,防止混亂。 (3)不同用戶有不同的查詢和修改權(quán)限,防止非法查詢,非法修改。 (4)能夠?qū)Σ樵兘Y(jié)果進(jìn)行分類匯總,實(shí)現(xiàn)報(bào)表打印和下載。 (5)方便用戶的操作,盡量減少用戶的操作。 1.3 項(xiàng)目提出的意義 隨著高校辦學(xué)規(guī)模的擴(kuò)大和招

12、生人數(shù)的增加,學(xué)生成績管理維護(hù)是學(xué)校管理中異常重要的一個(gè)環(huán)節(jié),作為學(xué)校,除了育人,就是育知,學(xué)生成績管理的計(jì)算機(jī)化是整個(gè)學(xué)校教務(wù)管理中的重要一部分,介于它的重要性,學(xué)生成績管理系統(tǒng)的開發(fā)與應(yīng)用就逐漸提入議程,并占著越來越重要的份量。 運(yùn)用學(xué)生成績管理維護(hù)系統(tǒng)可以減輕學(xué)院教學(xué)人員的工作量,縮小開支,提高工作效率與準(zhǔn)確率,能夠節(jié)省時(shí)間,學(xué)生也能夠盡快的知道自己的考試成績,投入新的課程的學(xué)習(xí)或復(fù)習(xí)這次沒有考過的課程。而學(xué)生成績管理系統(tǒng)的應(yīng)用也為今天的民辦教育在未來市場的競爭力有所提高。 在現(xiàn)代高科技的飛躍發(fā)展,人們工作習(xí)慣的改變,特別是電腦的大量普及,人們生活節(jié)奏越來越快,怎樣提高工作效率是人們首先

13、考慮的問題。學(xué)生成績管理是一個(gè)非常繁瑣與復(fù)雜的一項(xiàng)工作,一個(gè)原因就是工作量大,不好管。對于一個(gè)學(xué)校而言,管理好學(xué)生的成績,是非常重要的。因此開發(fā)出一套學(xué)生成績管理系統(tǒng)是非常必要的。第二章 系統(tǒng)開發(fā)主要運(yùn)用技術(shù)及開發(fā)模式2.1 系統(tǒng)開發(fā)技術(shù)介紹2.1.1 jsp技術(shù)jsp作為一門最熱門的網(wǎng)絡(luò)編程語言,在電子商務(wù)和電子政務(wù)開發(fā)中得到了廣泛的應(yīng)用。jsp全稱java server pages,它是由sun microsystems公司于1999年6月開發(fā)出來的一種全新的動(dòng)態(tài)網(wǎng)頁標(biāo)準(zhǔn)。它在傳統(tǒng)的html代碼中加入java程序片段。web服務(wù)器在遇到訪問jsp網(wǎng)頁的請求時(shí),首先執(zhí)行其中的程序片段,然后將

14、執(zhí)行結(jié)果以html格式返回給客戶。程序片段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁以及發(fā)送 email 等等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對客戶瀏覽器的要求最低。jsp中編程語言是java,組件是javabeans,一次編譯一直運(yùn)行,能在各種操作系統(tǒng)下工作。瀏覽器向web服務(wù)器請求.jsp文件,web服務(wù)器將.jsp文件發(fā)送到j(luò)sp引擎。jsp引擎首先檢查.jsp文件,如果是新的或修改過的,就把它編譯成servlet,再由servlet生成動(dòng)態(tài)頁面。動(dòng)態(tài)頁面以html語言形式發(fā)送回客戶端瀏覽器顯示。jsp元素是嵌入在靜態(tài)html頁面內(nèi)的

15、。和html一樣,所有的jsp元素都必須用一對<>括起來。和html不同的是jsp區(qū)分大小寫。為了跟html標(biāo)記有所區(qū)別,jsp標(biāo)記都以<%或<jsp:開頭,含有元素名的起始標(biāo)記和結(jié)束標(biāo)記相匹配,完全符合xml的語法規(guī)范。如果起始標(biāo)記和結(jié)束標(biāo)記之間沒有內(nèi)容,就可以合成一個(gè)單獨(dú)的標(biāo)記。另外,jsp通過javabeans實(shí)現(xiàn)了功能擴(kuò)展,能夠執(zhí)行更為復(fù)雜的處理。自jsp推出后,眾多大公司都支持jsp技術(shù)的服務(wù)器,如ibm、oracle、bea公司等,所以jsp迅速成為商業(yè)應(yīng)用的服務(wù)器端語言。jsp有如下幾個(gè)優(yōu)點(diǎn):對于用戶界面的更新,其實(shí)就是由 web server進(jìn)行的,所以

16、給人的感覺更新很快。 所有的應(yīng)用都是基于服務(wù)器的,所以它們可以時(shí)刻保持最新版本。 客戶端的接口不是很繁瑣,對于各種應(yīng)用易于部署、維護(hù)和修改。 2.1.2 javabeans 技術(shù)javabeans是描述java的軟件組件模型,有點(diǎn)類似于microsoft的com組件概念。在java模型中,通過javabeans可以無限擴(kuò)充java程序的功能,通過javabeans的組合可以快速的生成新的應(yīng)用程序。對于程序員來說,最好的一點(diǎn)就是javabeans可以實(shí)現(xiàn)代碼的重復(fù)利用,另外對于程序的易維護(hù)性等等也有很重大的意義。 javabeans通過java虛擬機(jī)(java virtual machine)可

17、以得到正確的執(zhí)行,運(yùn)行javabeans最小的需求是jdk1.1或者以上的版本。 javabeans傳統(tǒng)的應(yīng)用在于可視化的領(lǐng)域,如awt下的應(yīng)用。自從jsp誕生后,javabeans更多的應(yīng)用在了非可視化領(lǐng)域,在服務(wù)器端應(yīng)用方面表現(xiàn)出來了越來越強(qiáng)的生命力。在這里我們主要討論的是非可視化的javabeans,可視化的javabeans在市面上有很多java書籍都有詳細(xì)的闡述,在這里就不作為重點(diǎn)了。 非可視化的javabeans,顧名思義就是沒有g(shù)ui界面的javabeans。在jsp程序中常用來封裝事務(wù)邏輯、數(shù)據(jù)庫操作等等,可以很好地實(shí)現(xiàn)業(yè)務(wù)邏輯和前臺(tái)程序(如jsp文件)的分離,使得系統(tǒng)具有更好

18、的健壯性和靈活性。一個(gè)簡單的例子,比如說一個(gè)購物車程序,要實(shí)現(xiàn)購物車中添加一件商品這樣的功能,就可以寫一個(gè)購物車操作的javabeans,建立一個(gè)public的additem成員方法,前臺(tái)jsp文件里面直接調(diào)用這個(gè)方法來實(shí)現(xiàn)。如果后來又考慮添加商品的時(shí)候需要判斷庫存是否有貨物,沒有貨物不得購買,在這個(gè)時(shí)候我們就可以直接修改javabeans的additem方法,加入處理語句來實(shí)現(xiàn),這樣就完全不用修改前臺(tái)jsp程序了。通過javabeans可以很好地實(shí)現(xiàn)邏輯的封裝、程序的易于維護(hù)等 javabeans是一種軟件組件模型,它與其他軟件對象相互作用,決定如何建立和重用軟件組件被稱為bean。java

19、beans是基于sun公司的javabeans規(guī)范化、可在編程工具被可視化處理的可重用的軟件組件。2.1.3 html及javascript技術(shù)html(hyper text mark-up language)即超文本標(biāo)記語言,是www的描述語言。設(shè)計(jì)html語言的目的是為了能把存放在一臺(tái)電腦中的文本或圖形與另一臺(tái)電腦中的文本或圖形方便地聯(lián)系在一起,形成有機(jī)的整體,人們不用考慮具體信息是在當(dāng)前電腦上還是在網(wǎng)絡(luò)的其它電腦上。我們只需使用鼠標(biāo)在某一文檔中點(diǎn)取一個(gè)圖標(biāo),internet就會(huì)馬上轉(zhuǎn)到與此圖標(biāo)相關(guān)的內(nèi)容上去,而這些信息可能存放在網(wǎng)絡(luò)的另一臺(tái)電腦中。html文本是由html命令組成的描述性

20、文本,html命令可以說明文字、圖形、動(dòng)畫、聲音、表格、鏈接等。html的結(jié)構(gòu)包括頭部(head)、主體(body)兩大部分,其中頭部描述瀏覽器所需的信息,而主體則包含所要說明的具體內(nèi)容。javascript是一種基于對象(object)和事件驅(qū)動(dòng)(event driven)并具有安全性能的腳本語言。使用它的目的是與html超文本標(biāo)記語言、java 腳本語言(java小程序)一起實(shí)現(xiàn)在一個(gè)web頁面中連接多個(gè)對象,與web客戶交互作用。從而可以開發(fā)客戶端的應(yīng)用程序 等。它是通過嵌入或調(diào)入到標(biāo)準(zhǔn)的html語言中實(shí)現(xiàn)的。它的出現(xiàn)彌補(bǔ)了html語言的缺陷,它是java與html折衷的選擇,具有以下幾

21、個(gè)基本特點(diǎn): 1、是一種腳本編寫語言 javascript是一種腳本語言,它采用小程序段的方式實(shí)現(xiàn)編程。像其它腳本語言一樣,javascript同樣已是一種解釋性語言,它提供了一個(gè)易的開發(fā)過程。它的基本結(jié)構(gòu)形式與c、c+、vb、delphi十分類似。但它不像這些語言一樣,需要先編譯,而是在程序運(yùn)行過程中被逐行地解釋。它與html標(biāo)識(shí)結(jié)合在一起,從而方便用戶的使用操作。 2、基于對象的語言。 javascript是一種基于對象的語言,同時(shí)以可以看作一種面向?qū)ο蟮?。這意味著它能運(yùn)用自己已經(jīng)創(chuàng)建的對象。因此,許多功能可以來自于腳本環(huán)境中對象的方法與腳本的相互作用。 3、簡單性 javascript的

22、簡單性主要體現(xiàn)在:首先它是一種基于java基本語句和控制流之上的簡單而緊湊的設(shè)計(jì), 從而對于學(xué)習(xí)java是一種非常好的過渡。其次它的變量類型是采用弱類型,并未使用嚴(yán)格的數(shù)據(jù)類型。 4、安全性 javascript是一種安全性語言,它不允許訪問本地的硬盤,并不能將數(shù)據(jù)存入到服務(wù)器上,不允許對網(wǎng)絡(luò)文檔進(jìn)行修改和刪除,只能通過瀏覽器實(shí)現(xiàn)信息瀏覽或動(dòng)態(tài)交互。從而有效地防止數(shù)據(jù)的丟失。 5、動(dòng)態(tài)性的 javascript是動(dòng)態(tài)的,它可以直接對用戶或客戶輸入做出響應(yīng),無須經(jīng)過web服務(wù)程序。它對用戶的反映響應(yīng),是采用以事件驅(qū)動(dòng)的方式進(jìn)行的。所謂事件驅(qū)動(dòng),就是指在主頁(home page)中執(zhí)行了某種操作所

23、產(chǎn)生的動(dòng)作,就稱為“事件”(event)。比如按下鼠標(biāo)、移動(dòng)窗口、選擇菜單等都可以視為事件。當(dāng)事件發(fā)生后,可能會(huì)引起相應(yīng)的事件響應(yīng)。 6、跨平臺(tái)性 javascript是依賴于瀏覽器本身,與操作環(huán)境無關(guān),只要能運(yùn)行瀏覽器的計(jì)算機(jī),并支持javascript的瀏覽器就可正確執(zhí)行。從而實(shí)現(xiàn)了“編寫一次,走遍天下”的夢想。實(shí)際上javascript最杰出之處在于可以用很小的程序做大量的事。無須有高性能的電腦,軟件僅需一個(gè)字處理軟件及一瀏覽器,無須web服務(wù)器通道,通過自己的電腦即可完成所有的事情。 綜合所述javascript是一種新的描述語言,它可以被嵌入到html的文件之中。javascript

24、語言可以做到回應(yīng)使用者的需求事件(如:form的輸入),而不用任何的網(wǎng)路來回傳輸資料,所以當(dāng)一位使用者輸入一項(xiàng)資料時(shí),它不用經(jīng)過傳給伺服端(server)處理,再傳回來的過程,而直接可以被客戶端 (client) 的應(yīng)用程式所處理。2.1.4 struts技術(shù)struts 是當(dāng)今流行的jsp web 框架,struts 提供了一種創(chuàng)建具有良好可管理性的web應(yīng)用框架,其中對應(yīng)用程序的顯示,表示和數(shù)據(jù)的后端代碼進(jìn)行了抽象。struts 框架是基于mvc模式的框架。mvc模式包括三類對象,簡單的說,model 是應(yīng)用對象,view 是它在屏幕上的表示,controller 定義用戶輸入的響應(yīng)方式。

25、下面對struts 框架進(jìn)行介紹:struts framework 是一種基于java 的技術(shù),web應(yīng)用程序開發(fā)人員通過struts framework 即可充分利用面向?qū)ο笤O(shè)計(jì)、代碼重用以及“編寫一次、到處運(yùn)行”的優(yōu)點(diǎn)。struts 提供了一種創(chuàng)建web的應(yīng)用程序框架,其中對應(yīng)用程序的顯示、表示和數(shù)據(jù)的后端代碼進(jìn)行了抽象。 2.2開發(fā)工具介紹2.2.1 eclipse簡介eclipse 是一個(gè)開放源代碼的、基于 java 的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 java 開發(fā)工具(jav

26、a development tools,jdt)。 雖然大多數(shù)用戶很樂于將 eclipse 當(dāng)作 java ide 來使用,但 eclipse 的目標(biāo)不僅限于此。eclipse 還包括插件開發(fā)環(huán)境(plug-in development environment,pde),這個(gè)組件主要針對希望擴(kuò)展 eclipse 的軟件開發(fā)人員,因?yàn)樗试S他們構(gòu)建與 eclipse 環(huán)境無縫集成的工具。由于 eclipse 中的每樣?xùn)|西都是插件,對于給 eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場所。 這種平等和一致性并不僅限于 java 開發(fā)工具。盡

27、管 eclipse 是使用 java 語言開發(fā)的,但它的用途并不限于 java 語言;例如,支持諸如 c/c+、cobol 和 eiffel 等編程語言的插件已經(jīng)可用,或預(yù)計(jì)會(huì)推出。eclipse 框架還可用來作為與軟件開發(fā)無關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)。 基于 eclipse 的應(yīng)用程序的突出例子是 ibm 的 websphere studio workbench,它構(gòu)成了 ibm java 開發(fā)工具系列的基礎(chǔ)。例如,websphere studio application developer 添加了對 jsp、servlet、ejb、xml、web 服務(wù)和數(shù)據(jù)庫訪問的支持。

28、 2.2.2 tomcat簡介 在tomcat中,你還可以利用servlet2.3提供的事件監(jiān)聽器功能,來對你的應(yīng)用或者session實(shí)行監(jiān)聽。tomcat也提供其它的一些特征,如與ssl集成到一塊,實(shí)現(xiàn)安全傳輸。還有tomcat也提供jndi支持,這與那些j2ee應(yīng)用服務(wù)器提供的是一致的。應(yīng)用服務(wù)器提供更多的j2ee特征,如ejb,jms,jaas等,同時(shí)也支持jsp和servlet。而tomcat則功能沒有那么強(qiáng)大,它不提供ejb等支持。事實(shí)上,我們的很多中小應(yīng)用不需要采用ejb等技術(shù),jsp和servlet已經(jīng)足夠,這時(shí)如果用應(yīng)用服務(wù)器就有些浪費(fèi)了。而tomcat短小精悍,配置方便,能滿

29、足我們的需求,這種情況下我們自然會(huì)選擇tomcat。2.3開發(fā)模式介紹在中間層上設(shè)計(jì)上最好采用基于mvc的設(shè)計(jì)模式。model層用來實(shí)現(xiàn)業(yè)務(wù)邏輯,view層用來顯示用戶界面,controller層主要負(fù)責(zé)view層和model層之間的控制關(guān)系。mvc是(model-view-controller)的縮寫,mvc是application開發(fā)的設(shè)計(jì)模式,也就是大家所知道的model2.在mvc的設(shè)計(jì)模式中,它包括三類對象:1模型(model)對象:是應(yīng)用程序的主體部分。2視圖(view)對象:是應(yīng)用程序中負(fù)責(zé)生成用戶界面的部分。3控制器(control)對象:是根據(jù)用戶的輸入,控制用戶界面數(shù)據(jù)顯示

30、及更新model對象狀態(tài)的部分。即要求在application開發(fā)中你把商業(yè)邏輯,界面顯示,數(shù)據(jù)分離。下圖顯示了這幾個(gè)模塊各自的功能以及它們的相互關(guān)系。圖2. 1mvc設(shè)計(jì)模式mvc的優(yōu)點(diǎn)表現(xiàn)在以下幾個(gè)方面:1.低耦合性。視圖層和業(yè)務(wù)層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個(gè)應(yīng)用的業(yè)務(wù)流程或者業(yè)務(wù)規(guī)則的改變只需要改動(dòng)mvc的模型層即可。因?yàn)槟P团c控制器和視圖相分離,所以很容易改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。2.高重用性和可適用性。隨著技術(shù)的不斷進(jìn)步,現(xiàn)在需要用越來越多的方式來訪問應(yīng)用程序。mvc模式允許你使用各種不同樣式的視圖來訪問同一個(gè)服務(wù)器端的代碼。它包括任

31、何web(http)瀏覽器或者無線瀏覽器(wap),比如,用戶可以通過電腦也可通過手機(jī)來訂購某樣產(chǎn)品,雖然訂購的方式不一樣,但處理訂購產(chǎn)品的方式是一樣的。由于模型返回的數(shù)據(jù)沒有進(jìn)行格式化,所以同樣的構(gòu)件能被不同的界面使用。例如,很多數(shù)據(jù)可能用html來表示,但是也有可能用wap來表示,而這些表示所需要的僅令是改變視圖層的實(shí)現(xiàn)方式,而控制層和模型層無需做任何改變。 3.較低的生命周期成本。mvc使降低開發(fā)和維護(hù)用戶接品的技術(shù)含量成為可能。 4.快速的部署。使用mvc模式使開發(fā)時(shí)間得到相當(dāng)大的縮減,它使程序員(java開發(fā)人員)集中精力于業(yè)務(wù)邏輯,界面程序員(html和jsp開發(fā)人員)集中業(yè)務(wù)于表

32、現(xiàn)形式上。5.可維護(hù)性。分視圖層和業(yè)務(wù)邏輯層也使得web應(yīng)用更易于維護(hù)和修改。6.有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過工程化、工具化管理程序代碼。mvc模式的體系結(jié)構(gòu)圖如下:圖2.2 mvc三層體系結(jié)構(gòu) 在這種設(shè)計(jì)模式下,各層次之間的數(shù)據(jù)傳遞如圖2.3;圖2.3mvc設(shè)計(jì)模式的數(shù)據(jù)傳遞圖在本文討論的jsp管理系統(tǒng)中,在數(shù)據(jù)的存取方面,采用了jsp/servlet+jdbc的技術(shù),即客戶端不產(chǎn)生數(shù)據(jù)庫查詢命令,客戶端上的瀏覽器通過url和中間層的web服務(wù)器建立連接。web服務(wù)器主要負(fù)責(zé)接收本地或遠(yuǎn)程瀏覽器的http數(shù)據(jù)請求,然后中間層的se

33、rvlet收到請求后,通過執(zhí)行程序中的sql語句,利用jdbc提供的標(biāo)準(zhǔn)api對數(shù)據(jù)庫進(jìn)行訪問和相應(yīng)的操作處理。servlet再將查詢的數(shù)據(jù)傳給jsp,最后生成標(biāo)準(zhǔn)的jsp頁面將結(jié)果返回給提出請求的瀏覽器。這樣,不僅將客戶端與數(shù)據(jù)庫服務(wù)器端分開,同時(shí)提高了數(shù)據(jù)庫的訪問效率。2.4 數(shù)據(jù)庫技術(shù)2.4.1 關(guān)系數(shù)據(jù)庫模型關(guān)系數(shù)據(jù)庫將數(shù)據(jù)存放在被用戶視為表的關(guān)系中。關(guān)系由記錄和字段組成。表中的記錄或字段的物理次序是無關(guān)緊要的,并且表中的每個(gè)記錄通過具有唯一值得字段來識(shí)別。這是關(guān)系數(shù)據(jù)庫的兩個(gè)特征,允許數(shù)據(jù)的存在不依賴于它在計(jì)算機(jī)中的物理存儲(chǔ)方式。這樣在檢索時(shí),用戶不需要知道記錄的物理位置。關(guān)系模型將

34、聯(lián)系分成一對一、一對多和多對多。一對表之間的聯(lián)系通過匹配共享字段的值隱式地建立。只要用戶熟悉數(shù)據(jù)庫中表之間的聯(lián)系,就幾乎可以用無限多種方法訪問數(shù)據(jù)。1檢索數(shù)據(jù)??梢允褂脵C(jī)構(gòu)化查詢語言(sql)檢索關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)。sql是一種用于創(chuàng)建、修改、維護(hù)和查詢關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言。2關(guān)系數(shù)據(jù)庫的優(yōu)點(diǎn):(1)內(nèi)部多級完整性。建立在模型中的域級數(shù)據(jù)完整性確保數(shù)據(jù)的正確性;建立在表級的數(shù)據(jù)完整性確保記錄不重復(fù)并檢查主碼值的遺漏;建立在聯(lián)系級的數(shù)據(jù)完整性確保表之間的聯(lián)系的有效性;建立在事務(wù)級的數(shù)據(jù)完整性確保數(shù)據(jù)在事務(wù)的意義下是正確的。(2)數(shù)據(jù)在邏輯上和物理上都獨(dú)立于數(shù)據(jù)庫應(yīng)用。用戶對數(shù)據(jù)庫邏輯設(shè)計(jì)的改變,

35、以及數(shù)據(jù)庫軟件賣方對數(shù)據(jù)庫的物理實(shí)現(xiàn)的改變都不會(huì)影響建立在其上的數(shù)據(jù)庫應(yīng)用。(3)確保數(shù)據(jù)的一致性和正確性。數(shù)據(jù)的一致性和正確性由施加在數(shù)據(jù)庫上的各級完整性所保證。(4)數(shù)據(jù)易于檢索。根據(jù)用戶命令,可以從一個(gè)特定的表或從任意多個(gè)相關(guān)的表中檢索數(shù)據(jù)。這使得用戶幾乎可以用無限多種方式觀察數(shù)據(jù)。2.4.2 規(guī)范化關(guān)系數(shù)據(jù)庫中的關(guān)系必須是規(guī)范化的,即每一個(gè)分量必須是不可分的數(shù)據(jù)項(xiàng)。所謂“第幾范式”,是表示關(guān)系的某一種級別。所以經(jīng)常稱某一關(guān)系模式r為第幾范式?,F(xiàn)在把范式這個(gè)概念理解成符合某一種級別的關(guān)系模式的集合,則r為第幾范式就可以寫成rxnf。一個(gè)低一級范式的關(guān)系模式,通過模式分解可以轉(zhuǎn)換為若干戈高

36、一級范式的關(guān)系模式的集合,這種過程就叫規(guī)范化。關(guān)系數(shù)據(jù)庫中的關(guān)系是要滿足一定要求的,滿足不同程度要求的為不同范式。滿足最低要求的叫第一范式,簡稱1nf。若r1nf,且每一個(gè)非主屬性完全函數(shù)依賴于碼,則r2nf。若r2nf,且每一個(gè)非主屬性既不部分依賴于碼,也不傳遞依賴于碼,則r3nf。2.4.3 mysql 簡介數(shù)據(jù)庫是60年代末出現(xiàn)的一門計(jì)算機(jī)軟件技術(shù),到現(xiàn)在雖然只有三十多年的歷史,但在理論和時(shí)間上都已經(jīng)趨于成熟,使我們能夠方便的使用。數(shù)據(jù)庫技術(shù)是 據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個(gè)國家信息化程度的重要標(biāo)志。mysql作為一種開放源碼數(shù)據(jù)庫,以其簡單易用的特點(diǎn)廣泛被廣

37、大用戶采用,mysql雖然是免費(fèi)的,但同oracle, sybase, informix, db2等商業(yè)數(shù)據(jù)庫一樣,具有數(shù)據(jù)庫系統(tǒng)的通用性:(1)數(shù)據(jù)庫管理系統(tǒng)。我們知道,所謂的數(shù)據(jù)庫就是一些結(jié)構(gòu)化的數(shù)據(jù)的聯(lián)合體,要提供對這些數(shù)據(jù)的存取、增加、修改、刪除或更加復(fù)雜的數(shù)據(jù)抽取等操作,需要有一個(gè)支撐系統(tǒng),這就是數(shù)據(jù)庫管理系統(tǒng)(dbms),mysql完全具有這方面的功能。(2)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在數(shù)據(jù)庫的發(fā)展歷程中,曾出現(xiàn)過多種不同形式的數(shù)據(jù)庫系統(tǒng),但關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(rdbms)以其優(yōu)越性而被廣為采用,象現(xiàn)在幾種廣泛使用的數(shù)據(jù)庫全為關(guān)系型數(shù)據(jù)庫。同樣,mysql也是關(guān)系型的數(shù)據(jù)庫系統(tǒng),支持

38、標(biāo)準(zhǔn)的結(jié)構(gòu)化查詢語言(structured query language)。(3)開放源碼數(shù)據(jù)庫。同商業(yè)性的數(shù)據(jù)庫相比,這是mysql最大的特點(diǎn)。mysql的源碼是公開的,這就意味著任何人,只要遵守gpl的規(guī)則都可以對mysql的源碼使用、修改以符合自己特殊的需求。(4)技術(shù)特點(diǎn)。mysql服務(wù)器端是多線程的,為客戶端提供了不同的程序接口和鏈接庫,如c、c+、java、perl、php、tcl等,也提供了簡單的管理工具,如mysqladmin,mysql等。 正因?yàn)閙ysql的源碼是公開的,使得我們有機(jī)會(huì)從源碼級,更深入的了解mysql。從這一層面上可以探求、了解mysql數(shù)據(jù)庫的特性:良好的

39、內(nèi)存管理機(jī)制,尤其是內(nèi)存泄漏的管理,通過了purify的嚴(yán)格測試;支持多種平臺(tái); 提供多種形式的api,為我們開發(fā)工具的選擇提供了便利; 使用多線程的技術(shù),可充分發(fā)揮系統(tǒng)的特點(diǎn),避免在smp系統(tǒng)中出現(xiàn)僅使用單cpu的現(xiàn)象;對磁盤表的管理采用b樹加密及索引的技術(shù),為我們快速訪問數(shù)據(jù)提供了可能; 高性能的內(nèi)存申請技術(shù);臨時(shí)表采用在內(nèi)存中以哈希表實(shí)現(xiàn);提供多種數(shù)據(jù)類型;支持定長的和變長的紀(jì)錄;所有的列都有缺省值,為我們的某些“粗心”提供了方便;靈活、安全的權(quán)限和密碼系統(tǒng),密碼在傳輸中加密傳送,允許主機(jī)端驗(yàn)證密碼;13)客戶端可以通過tcp/ip、unix套接字、命名管道(nt)連接到mysql數(shù)據(jù)庫

40、服務(wù)器;對多種字符集的完全支持等等許多優(yōu)點(diǎn)。mysql有如此多的特點(diǎn),又由于其免費(fèi)的特點(diǎn),這就給許多的中小應(yīng)用提供了不錯(cuò)的選擇。尤其是對一些中小企業(yè),無論是從降低成本,還是從性能方面,采用mysql作為其數(shù)據(jù)支撐系統(tǒng),都是一種可行的方案。但也應(yīng)當(dāng)注意,采用mysql作為應(yīng)用數(shù)據(jù)庫,就意味著所有的問題都需要自己解決,要承擔(dān)一定的風(fēng)險(xiǎn)。2.5 軟硬件環(huán)境操作系統(tǒng):windows xp數(shù)據(jù)庫:mysql編程語言: java 編程工具:eclipse+myeclipseweb服務(wù)器:tomcat程序框架:struts+hibermate第三章 系統(tǒng)需求分析3.1系統(tǒng)調(diào)查 21世紀(jì)以來,人類經(jīng)濟(jì)高速發(fā)展

41、,人們發(fā)生了日新月異的變化,特別是計(jì)算機(jī)的應(yīng)用及普及到經(jīng)濟(jì)和社會(huì)生活的各個(gè)領(lǐng)域。使原本的舊的管理方法越來越不適應(yīng)現(xiàn)在社會(huì)的發(fā)展。許多人還停留在以前的手工操作。這大大地阻礙了人類經(jīng)濟(jì)的發(fā)展。為了適應(yīng)現(xiàn)代社會(huì)人們高度強(qiáng)烈的時(shí)間觀念,我對河南科技學(xué)院新科學(xué)院的原有的學(xué)生成績管理系統(tǒng)進(jìn)行了調(diào)查研究,并對一些教師和學(xué)生進(jìn)行了調(diào)查,聽取他們對學(xué)生成績管理的一些建議和要求以及他們對這方面的一些需求,根據(jù)我所具有的知識(shí),決定開發(fā)的這個(gè)系統(tǒng)采用當(dāng)前較為流行的編程軟件java作為實(shí)現(xiàn)語言,以數(shù)據(jù)庫mysql作為系統(tǒng)的后臺(tái)操作.3.2系統(tǒng)構(gòu)架系統(tǒng)采用的是b/s結(jié)構(gòu),即瀏覽器和服務(wù)器架構(gòu),示意圖如圖3-1所示。瀏覽器

42、端提供用戶操作界面,接受用戶輸入的各種操作信息,向服務(wù)器發(fā)出各種操作命令或數(shù)據(jù)請求,并接收執(zhí)行操作命令后返回的數(shù)據(jù)結(jié)果,根據(jù)業(yè)務(wù)邏輯進(jìn)行相關(guān)的運(yùn)算,向用戶顯示相應(yīng)的信息。服務(wù)器端接收瀏覽器端的數(shù)據(jù)或命令請求,并請求數(shù)據(jù)庫服務(wù)器執(zhí)行數(shù)據(jù)庫操作得到相應(yīng)的數(shù)據(jù)集,對數(shù)據(jù)集進(jìn)行相應(yīng)的處理,然后將數(shù)據(jù)集或處理后的數(shù)據(jù)集返回給瀏覽器端。 用戶瀏覽器 web服務(wù)器數(shù)據(jù)庫服務(wù)器ie等瀏覽器tomcat操作請求返回查詢結(jié)果使用hibernate操作 數(shù)據(jù)庫返回操作結(jié)果圖3-1系統(tǒng)架構(gòu)示意圖3.3 用戶需求 3.3.1學(xué)生的需求(1) 在第一時(shí)間查詢自己所有的成績(自己的平均成績,總成績)(2) 查詢某一科成績,

43、該科平均成績,所在名次,最高成績,最低成績(3) 打印和下載自己的成績 3.3.2老師的需求(1) 查詢某一學(xué)生的所有成績(平均成績,總成績)(2) 查詢某一學(xué)生某一科成績,該科平均成績,所在名次,最高成績,最低成績(3) 查詢某一班級的成績(所有成績,某一學(xué)期的所有成績,某一學(xué)期的某一科目的所有成績)(4) 對某一科成績進(jìn)行統(tǒng)計(jì)(及格人數(shù),及格率,不及格人數(shù),不及格率,優(yōu)秀人數(shù),優(yōu)秀率,某一分?jǐn)?shù)段的人數(shù))(5) 錄入成績和修改更新成績(自己所教授的那一科成績)(6) 打印和下載所查詢或統(tǒng)計(jì)出的結(jié)果3.3.3管理員的需求(1) 查詢某一學(xué)生的所有成績(平均成績,總成績)(2) 查詢某一學(xué)生某一

44、科成績,該科平均成績,所在名次,最高成績,最低成績(3) 查詢某一班級的成績(所有成績,某一學(xué)期的所有成績,某一學(xué)期的某一科目的所有成績)(4) 對某一科成績進(jìn)行統(tǒng)計(jì)(及格人數(shù),及格率,不及格人數(shù),不及格率,優(yōu)秀人數(shù),優(yōu)秀率,某一分?jǐn)?shù)段的人數(shù))(5) 錄入成績和修改成績(6) 打印和下載所查詢或統(tǒng)計(jì)出的結(jié)果(7) 用戶管理(8) 數(shù)據(jù)庫管理3.4 數(shù)據(jù)需求分析3.4.1 數(shù)據(jù)字典編號(hào):d1名稱:學(xué)生登陸描述:記錄學(xué)生登陸的基本信息結(jié)構(gòu):學(xué)生編號(hào) 學(xué)生姓名 登陸密碼 班級 備注 編號(hào):d2名稱:教師信息描述:記錄教師登陸時(shí)的信息結(jié)構(gòu):教師編號(hào) 姓名 登陸時(shí)的密碼 備注編號(hào):d3名稱:班級信息描述

45、:記錄班級的基本信息結(jié)構(gòu):班級編號(hào) 班級名稱 備注編號(hào):d4名稱:教師所擔(dān)任的課程表描述:記錄教師所擔(dān)任的課程的信息結(jié)構(gòu):教師編號(hào) 所教授的科目 所教授的班級 備注 編號(hào):d5名稱:管理員表描述:記錄教書管理員登陸的信息結(jié)構(gòu):教師管理員編號(hào) 登錄名 登陸密碼 備注 編號(hào):d6名稱:學(xué)生成績表描述:記錄學(xué)生的考試成績信息結(jié)構(gòu):學(xué)生姓名 考試科目 學(xué)生學(xué)號(hào) 所在班級 考試性質(zhì) 學(xué)期 授課教師 考試成績 備注學(xué)生基本信息學(xué)生編號(hào)學(xué)生姓名備注班級登錄密碼3.4.2 e-r 圖圖3.2學(xué)生登陸基本信息實(shí)體屬性圖教師基本信息教師編號(hào)教師姓名備注登錄密碼圖3.3教師登陸基本信息實(shí)體屬性圖班級基本信息班級編號(hào)

46、備注班級名稱圖3.4班級基本信息實(shí)體屬性圖教師授課表教師編號(hào)所授課程備注授課班級圖3.5 教師授課實(shí)體屬性圖管理員信息登陸密碼備注登陸名圖3.6 教師管理員登陸實(shí)體屬性圖班級信息表學(xué)生姓名考試科目學(xué)生學(xué)號(hào)所在班級該科目任課教師成績考試性質(zhì)學(xué)期備注圖3.7 學(xué)生成績信息實(shí)體屬性圖第四章 系統(tǒng)總體設(shè)計(jì)4.1 系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)功能結(jié)構(gòu)圖如圖4-1所示:統(tǒng)計(jì)學(xué)生成績查詢學(xué)生成績錄入學(xué)生成績修改登錄密碼打印查詢結(jié)果下載查詢結(jié)果登錄學(xué)生成績維護(hù)系統(tǒng)教師登錄教務(wù)管理員登錄學(xué)生登錄查詢自己成績打印查詢結(jié)果下載查詢結(jié)果修改登錄密碼統(tǒng)計(jì)學(xué)生成績查詢學(xué)生成績錄入學(xué)生成績修改登錄密碼打印查詢結(jié)果下載查詢結(jié)果用戶人員

47、管理添加/刪除學(xué)生添加/刪除老師添加/刪除班級創(chuàng)建新的/刪除管理員添加/刪除老師所擔(dān)任的科目 圖4-1系統(tǒng)層次方框圖4.2系統(tǒng)總體設(shè)計(jì)思想 (1)采用現(xiàn)有的資源,先進(jìn)的管理系統(tǒng)開發(fā)方案,充分利用學(xué)?,F(xiàn)有的資源,減少開發(fā)中的時(shí)間和財(cái)力、物力、提高系統(tǒng)開發(fā)的水平和應(yīng)用效果。 (2)系統(tǒng)就滿足學(xué)校的需求,例如學(xué)生成績的錄入、查詢、更新,學(xué)生成績錄入與排名等等。 (3)系統(tǒng)具備數(shù)據(jù)庫維護(hù)功能,及時(shí)根據(jù)用戶需求進(jìn)行數(shù)據(jù)添加、刪除、修改等操作。4.3系統(tǒng)設(shè)計(jì)分析本系統(tǒng)使用struts開源框架實(shí)現(xiàn)mvc三層模式進(jìn)行開發(fā),使模型,視圖和控制分開,業(yè)務(wù)邏輯和顯示分開,這樣有利于錯(cuò)誤的查找和系統(tǒng)的升級。 該系統(tǒng)適

48、用于各個(gè)學(xué)校,其功能主要為成績管理:用于對成績的錄入、修改、匯總、排名以及查詢等操作。 4.4 數(shù)據(jù)庫設(shè)計(jì)4.4.1 數(shù)據(jù)庫的概要設(shè)計(jì)數(shù)據(jù)庫是系統(tǒng)的核心,它具有對信息進(jìn)行收集、組織、存儲(chǔ)、加工、抽取和傳播等功能。構(gòu)筑大型數(shù)據(jù)庫和蓋房子奠基相似,數(shù)據(jù)庫的設(shè)計(jì)直接關(guān)系系統(tǒng)的成敗,這正是當(dāng)前諸多系統(tǒng)的開發(fā)不能盡如人意的癥結(jié)所在。因此要獲得優(yōu)秀的系統(tǒng)必須采用科學(xué)方法進(jìn)行合理的數(shù)據(jù)庫設(shè)計(jì)。根據(jù)美國國家標(biāo)準(zhǔn)組織提出的數(shù)據(jù)庫設(shè)計(jì)的ansi三級模式,相應(yīng)的數(shù)據(jù)庫設(shè)計(jì)可分為概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)及物理設(shè)計(jì)。輸入信息登陸瀏覽成績修改信息下載信息servlet容器servletjsp數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)流程圖是一

49、種能全面地描述信息系統(tǒng)邏輯模型的主要工具,它可以用少數(shù)幾種符號(hào)綜合地反映出信息在系統(tǒng)中的流動(dòng)、處理和存儲(chǔ)情況。系統(tǒng)各模塊的實(shí)現(xiàn)主要是對數(shù)據(jù)庫的訪問,數(shù)據(jù)流程分析給用戶提供了各模塊在對數(shù)據(jù)庫訪問時(shí),數(shù)據(jù)的流通狀態(tài)。數(shù)據(jù)在系統(tǒng)內(nèi)部的流動(dòng)情況抽象地獨(dú)立出來,舍去了具體組織機(jī)構(gòu)、信息載體、處理工作、物資、材料等,單從數(shù)據(jù)流動(dòng)過程來考查實(shí)際的數(shù)據(jù)處理模式。數(shù)據(jù)流程分析主要包括對信息的流動(dòng)、傳遞、處理、存儲(chǔ)等的分析。數(shù)據(jù)流程分析的目的就是要發(fā)現(xiàn)和解決數(shù)據(jù)流通中的問題。通過需求分析和系統(tǒng)功能設(shè)計(jì),本系統(tǒng)的數(shù)據(jù)流程圖可以繪制如圖4.2圖4.2系統(tǒng)數(shù)據(jù)流程圖4.4.2 數(shù)據(jù)庫表的設(shè)計(jì)本系統(tǒng)將數(shù)據(jù)存儲(chǔ)在六個(gè)表中,

50、這六個(gè)表分別是:學(xué)生表(見 表4-3):保存學(xué)生的基本信息,包括學(xué)生的姓名,登錄系統(tǒng)時(shí)的密碼,學(xué)生的學(xué)號(hào),所在的班級以及一些備注信息。字段名稱中文解釋保存類型默認(rèn)值長度可否為空主鍵sid主鍵自增int無16不能是name姓名varchar無24不能否password登錄時(shí)密碼varchar無24不能否student_id學(xué)號(hào)varchar無20不能否classes班級varchar無24不能否remark備注varchar無56可以否表4-3 學(xué)生表教師表(見 表4-4):保存教師的基本信息,包括教師的姓名,登錄系統(tǒng)時(shí)的密碼,教師號(hào),備注,其中備注默認(rèn)為“0”,當(dāng)為“1”的時(shí)候教師可以錄入和修

51、改學(xué)生的成績,為空或者是其他值的時(shí)候,錄入功能將被鎖定。字段名稱中文解釋保存類型默認(rèn)值長度可否為空主鍵tid主鍵自增int無16不能是name姓名varchar無24不能否password登錄時(shí)密碼varchar無24不能否teacher_id教師號(hào)varchar無20不能否remark備注 varchar“0”56可以否表4-4 教師表班級表(見表4-5):保存班機(jī)的基本信息,包括班級名稱和備注。字段名稱中文解釋保存類型默認(rèn)值長度可否為空主鍵cid主鍵自增int無16不能是classes班級名稱varchar無24不能否remark備注 varchar無56可以否表4-5 班級表教師所擔(dān)任課

52、程的表(見 表4-6):保存教師所教的課程信息。字段名稱中文解釋保存類型默認(rèn)值長度可否為空主鍵id主鍵自增int無16不能是subject所教授的科目varchar無24不能否classes班級varchar無24不能否student_id教師號(hào)varchar無20不能否remark備注 varchar無56可以否表4-6 教師所擔(dān)任課程的表教務(wù)管理員表(見 表4-7):保存管理員的基本信息。字段名稱中文解釋保存類型默認(rèn)值長度可否為空主鍵mid主鍵自增int無16不能是name登錄名varchar無24不能否password登錄時(shí)密碼varchar無24不能否remark備注 varchar無

53、56可以否表4-7教務(wù)管理員表成績表(見 表4-8):主要保存關(guān)于學(xué)生成績的一些信息,本系統(tǒng)主要是對該表的操作。字段名稱中文解釋保存類型默認(rèn)值長度可否為空主鍵s_id主鍵自增int無16不能是name姓名varchar無24不能否subject科目varchar無24不能否student_id學(xué)號(hào)varchar無20不能否classes班級varchar無24不能否property考試性質(zhì)varchar無24不能否term學(xué)期varchar無24不能否teacher該科目的教師varchar無24不能否result成績int無16可以否remark備注varchar無56可以否表4-8 成績表

54、第五章 系統(tǒng)詳細(xì)設(shè)計(jì)5.1 登錄功能設(shè)計(jì)學(xué)生和老師登錄時(shí)要輸入用戶名和密碼。每個(gè)人進(jìn)入都要憑用戶名和密碼進(jìn)入。提高了系統(tǒng)的安全行。本功能的程序流程圖如圖5.1所示。圖5.1 登錄系統(tǒng)流程圖5.2 學(xué)員管理功能 包含四個(gè)小模塊,查詢自己的成績,修改登錄密碼,打印查詢結(jié)果,下載查詢結(jié)果。其中查詢自己的成績時(shí),學(xué)生可以輸入要查詢的科目,學(xué)期等。開始輸入要查詢的成績科目從成績表中查詢學(xué)生的成績信息y顯示錯(cuò)誤信息顯示查詢結(jié)果結(jié)束結(jié)果是否為空n結(jié)果是否為空以sid為條件從各個(gè)表中查詢信息顯示提示信息yn圖5.2學(xué)生查詢成績流程圖5.3 教師管理功能在該系統(tǒng)設(shè)計(jì)中,主要是實(shí)現(xiàn)教師對學(xué)生成績的添加。在教師查詢信息時(shí),是根據(jù)教師的的唯一標(biāo)識(shí)sid為條件查詢,在student表中,查詢所有符合sid要求的學(xué)生的基本信息。開始輸入要錄

溫馨提示

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

最新文檔

評論

0/150

提交評論