版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本科畢業(yè)論文(設(shè)計(jì))題目:我國(guó)證券市場(chǎng)監(jiān)管模式分析學(xué) 院 計(jì)算機(jī)系系工程學(xué)院 專(zhuān) 業(yè) 計(jì)算機(jī)科學(xué)以技術(shù) 班 級(jí) 07級(jí)計(jì)科2班 學(xué) 號(hào) 20070854211 姓 名 錢(qián)彥蓉 指導(dǎo)教師 李靜 山東財(cái)政學(xué)院教務(wù)處制二一一年五月基于WEB教師教學(xué)質(zhì)量評(píng)價(jià)系統(tǒng)摘要:隨著計(jì)算機(jī)技術(shù)的發(fā)展,網(wǎng)絡(luò)技術(shù)對(duì)我們的生活和工作顯得越來(lái)越重要,特別是信息高度發(fā)達(dá)的今天,人們對(duì)最新信息的需求和發(fā)布迫切需要及時(shí)性。而動(dòng)態(tài)交互式網(wǎng)頁(yè)剛好提供了這些功能。目前,網(wǎng)上已經(jīng)有一些類(lèi)似的教評(píng)系統(tǒng),通過(guò)對(duì)這些系統(tǒng)的觀察以及對(duì)使用過(guò)這些系統(tǒng)的老師和同學(xué)們的了解,我們發(fā)現(xiàn):這些系統(tǒng)只是簡(jiǎn)單的將評(píng)價(jià)內(nèi)容以網(wǎng)頁(yè)的形式展現(xiàn)出來(lái),讓同學(xué)們選擇,
2、然后將結(jié)果統(tǒng)一的保存提交到服務(wù)器。這樣做有很大的弊端,教評(píng)內(nèi)容難于更新;教評(píng)結(jié)果的可信度有待提高;同時(shí)有多個(gè)用戶登錄時(shí),系統(tǒng)的運(yùn)行狀況不好等諸多問(wèn)題。本系統(tǒng)是為了教務(wù)老師提供相關(guān)決策支持,為職稱(chēng)評(píng)聘提供教學(xué)工作質(zhì)量的科學(xué)依據(jù),同時(shí)減輕了教務(wù)老師的工作量。系統(tǒng)是基于Windows XP操作系統(tǒng),采用JSP開(kāi)發(fā),并使用SQL SERVER 2000數(shù)據(jù)庫(kù)來(lái)實(shí)現(xiàn)。關(guān)鍵詞:教學(xué);評(píng)教;JSP1 緒論1.1關(guān)于評(píng)教所謂教評(píng),就是在教學(xué)的過(guò)程中,通過(guò)學(xué)生在學(xué)習(xí)過(guò)程中的反饋信息,對(duì)教師的授課情況的一項(xiàng)調(diào)查,目的是為了及時(shí)的了解教師與學(xué)生之間在教與學(xué)的過(guò)程中所遇到的問(wèn)題,有針對(duì)性的開(kāi)展教學(xué)工作,提高教學(xué)質(zhì)量。
3、教育理論與教育實(shí)踐如何統(tǒng)一是當(dāng)前教育界亟待解決的問(wèn)題。教育評(píng)價(jià)標(biāo)準(zhǔn)系統(tǒng)是教育理論和教育實(shí)踐的中間環(huán)節(jié),教育評(píng)價(jià)有助于教育理論與教育實(shí)踐達(dá)到統(tǒng)一。1.2開(kāi)發(fā)目的隨著計(jì)算機(jī)技術(shù)的發(fā)展,網(wǎng)絡(luò)技術(shù)對(duì)我們的生活和工作顯得越來(lái)越重要,特別是信息高度發(fā)達(dá)的今天,人們對(duì)最新信息的需求和發(fā)布迫切需要及時(shí)性。而動(dòng)態(tài)交互式網(wǎng)頁(yè)剛好提供了這些功能,本系統(tǒng)就是一個(gè)能夠在網(wǎng)上實(shí)現(xiàn)教師評(píng)教系統(tǒng),能夠大大減輕教工人員的工作量,提高辦事效率;設(shè)計(jì)教師教學(xué)質(zhì)量評(píng)教系統(tǒng)只是一種手段, 通過(guò)它使我可以更好的了解計(jì)算機(jī)的工作過(guò)程,掌握開(kāi)發(fā)語(yǔ)言的使用方法,掌握開(kāi)發(fā)各種項(xiàng)目的工作技能,適應(yīng)迅猛發(fā)展的社會(huì)。1.3 國(guó)內(nèi)外發(fā)展研究教評(píng)的主體,
4、學(xué)生教評(píng)是否科學(xué)關(guān)于教評(píng)是大多數(shù)教學(xué)工作者都認(rèn)可的一種提高教學(xué)質(zhì)量的有效手段,但是由誰(shuí)來(lái)評(píng),怎樣來(lái)評(píng),說(shuō)法不一。有很多人認(rèn)為學(xué)生教評(píng)總體而言是最可靠、最公正的,基本上不受各種人際關(guān)系的影響。關(guān)鍵是要排除,有些教師故意迎合學(xué)生的心理,以獲得較高的教評(píng)等級(jí),可以與領(lǐng)導(dǎo)教評(píng),教師之間教評(píng)相結(jié)合的方法來(lái)避免。教評(píng)應(yīng)該從哪些方面進(jìn)行評(píng)價(jià)教評(píng)可以從教學(xué)內(nèi)容、教學(xué)態(tài)度、教學(xué)方法、教學(xué)效果等方面來(lái)進(jìn)行評(píng)價(jià)。2 平臺(tái)開(kāi)發(fā)工具2.1 JSP技術(shù)簡(jiǎn)介JSP(Java Server Page服務(wù)器網(wǎng)頁(yè))是從1998年開(kāi)始出現(xiàn)的新技術(shù)。由Sun公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),是基于JavaServ
5、let以及整個(gè)Java體系的web開(kāi)發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*.htm,*.html)中加入腳本片段和JSP標(biāo)記(Tag),構(gòu)成JSP網(wǎng)頁(yè)(*.jsp)。JSP技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的web頁(yè)面提供了簡(jiǎn)便的方法。JSP作為Java家族的一員,承襲了Java的特點(diǎn),即跨平臺(tái)的特性,也即一次編譯,到處運(yùn)行。在國(guó)外,己經(jīng)大量使用JSP作為網(wǎng)絡(luò)應(yīng)用程序的開(kāi)發(fā)工具,而在國(guó)內(nèi),盡管JSP還不是主流開(kāi)發(fā)技術(shù),但是由于JSP的強(qiáng)大優(yōu)勢(shì),許多網(wǎng)站都已經(jīng)準(zhǔn)備轉(zhuǎn)向JSP,利用JSP來(lái)開(kāi)發(fā)動(dòng)態(tài)網(wǎng)站。 2.2 JSP工作原理JSP是面向服務(wù)器的,因此支持任何瀏覽器。當(dāng)Web服務(wù)器和JSP引擎遇到訪問(wèn)JSP
6、網(wǎng)頁(yè)的請(qǐng)求時(shí),JSP引擎將請(qǐng)求對(duì)象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBean組件、Servlet或EJB等,然后由服務(wù)器端組件處理這些請(qǐng)示,可能需要從數(shù)據(jù)庫(kù)或數(shù)據(jù)存儲(chǔ)中檢索信息,然后服務(wù)器端組件再將響應(yīng)對(duì)象返回JSP引擎。JSP引擎將響應(yīng)對(duì)象傳遞給JSP頁(yè)面,根據(jù)JSP頁(yè)面的HTML格式完成數(shù)據(jù)編排,最后Web服務(wù)器和JSP引擎將格式化后的JSP頁(yè)面以HTML格式返回客戶瀏覽器。這就是當(dāng)前網(wǎng)站構(gòu)建中廣泛采用的瀏覽器Web服務(wù)器后臺(tái)數(shù)據(jù)庫(kù)的三層架構(gòu)模式。因?yàn)镴SP所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果。2.3 JSP體系結(jié)構(gòu)JSP網(wǎng)站開(kāi)發(fā)標(biāo)準(zhǔn)給出了兩種使用JSP的技
7、術(shù),可以歸納為模式一、模式二。模式一:JSP+JavaBeans技術(shù)在這種模式中,JSP頁(yè)面獨(dú)自響應(yīng)請(qǐng)求并將處理結(jié)果返回給客戶。Bean處理所有數(shù)據(jù)訪問(wèn),JSP實(shí)現(xiàn)頁(yè)面的表現(xiàn),以實(shí)現(xiàn)內(nèi)容生成與顯示相分離。當(dāng)處理復(fù)雜的大型應(yīng)用時(shí),頁(yè)面被嵌入大量的腳本或Java代碼段,當(dāng)需要處理的商業(yè)邏輯復(fù)雜時(shí),這種情況會(huì)變得非常糟糕,大量的內(nèi)嵌代碼使得頁(yè)面程序變得復(fù)雜,對(duì)于前端界面設(shè)計(jì)人員,這是不可思議的事情。所以模式一可用于小型應(yīng)用,不能夠滿足大型應(yīng)用的需要。模式二:JSP+Servlet+JavaBeans技術(shù)Servlet技術(shù)是一種采用Java技術(shù)來(lái)實(shí)現(xiàn)CGI功能的一種技術(shù),Servlet技術(shù)非常適于服務(wù)
8、器端的處理和編程,并且Servlet會(huì)長(zhǎng)期駐留在內(nèi)存。從開(kāi)發(fā)的觀點(diǎn)看,模式二具有更清晰的頁(yè)面表現(xiàn),清楚的開(kāi)發(fā)者角色劃分,在大規(guī)模項(xiàng)目開(kāi)發(fā)中,模式二更被采用,模式二也更符合當(dāng)前流行的MVC結(jié)構(gòu)(Model/view/controller),其中Servlet對(duì)應(yīng)controller,處于控制者的位置,處理HTTP請(qǐng)求,負(fù)責(zé)生成JSP中使用的Beans組件或?qū)ο?,并判斷?yīng)將請(qǐng)求傳遞給哪個(gè)JSP等,JSP對(duì)應(yīng)view,負(fù)責(zé)生成最終的動(dòng)態(tài)網(wǎng)頁(yè)并返回給瀏覽器。而JavaBeans對(duì)應(yīng)的是Model,實(shí)現(xiàn)各個(gè)具體的應(yīng)用邏輯與功能。2.4 JSP的特點(diǎn)1. 簡(jiǎn)化的頁(yè)面生成技術(shù)。JSP頁(yè)面用標(biāo)準(zhǔn)的HTML或X
9、ML命令來(lái)處理頁(yè)面的格式化和布局設(shè)計(jì),而用類(lèi)似HTML、XML的標(biāo)記和Java語(yǔ)言編寫(xiě)的腳本程序生成頁(yè)面內(nèi)容。這使得頁(yè)面形式與頁(yè)面內(nèi)容互相獨(dú)立,非常有利于大型項(xiàng)目的分工合作。2. 與Java平臺(tái)有機(jī)集成。JSP技術(shù)是Java 2平臺(tái)的重要組成部分,JSP使用Java語(yǔ)言作為它的腳本語(yǔ)言。在JSP頁(yè)面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語(yǔ)言的強(qiáng)大功能。使用JSP技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的Web應(yīng)用程序。3. 硬件平臺(tái)和服務(wù)器無(wú)關(guān)性。JSP作為Java家族的一員,秉承了Java技術(shù)的“一次編寫(xiě),隨處可用(Write Once,Rum Anywhe
10、re)”的特性,可以運(yùn)行于大多數(shù)流行的操作系統(tǒng)平臺(tái)及Web服務(wù)器,這種與服務(wù)器硬件和操作系統(tǒng)平臺(tái)的無(wú)關(guān)性是JSP相對(duì)于其它動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)最大的一個(gè)優(yōu)點(diǎn)。4. 功能可擴(kuò)展性。如同Microsoft的JSP技術(shù)可以通過(guò)ActiveX/COM組件來(lái)擴(kuò)展功能一樣,JSP可以通過(guò)JavaBean和EJB(Enterprise JavaBean)以及自定義的標(biāo)記來(lái)擴(kuò)展功能。JSP可以通過(guò)JDBC,與諸如Oracle、SQL Server這樣的大型關(guān)系數(shù)據(jù)庫(kù)進(jìn)行連接。JSP提供了一些隱含對(duì)象。這些隱含對(duì)象在JSP頁(yè)面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對(duì)象,可以使腳本功能更加強(qiáng)大,并且編程
11、更加容易、方便。例如,利用request對(duì)象,可以很容易地接收用戶在HTML表單中提交的信息。2.5系統(tǒng)數(shù)據(jù)庫(kù)連接JDBC技術(shù)是Java DataBase Connectivity的縮寫(xiě),它是SUN公司提供的一種支持基本SQL功能的通用的應(yīng)用程序接口(Application Programming Interface)。它由一組用Java語(yǔ)言編寫(xiě)的類(lèi)和接口組成。通過(guò)這些類(lèi)和接口,程序開(kāi)發(fā)人員可以在Java語(yǔ)言中方便地建立與數(shù)據(jù)庫(kù)的鏈接,通過(guò)執(zhí)行相應(yīng)SQL語(yǔ)句,完成對(duì)不同數(shù)據(jù)庫(kù)的訪問(wèn)。因此,開(kāi)發(fā)人員使用JDBC API可以不必編寫(xiě)一個(gè)應(yīng)用程序來(lái)訪問(wèn)Sybase數(shù)據(jù)庫(kù),又另外編寫(xiě)一個(gè)應(yīng)用程序去訪問(wèn)
12、Oracle數(shù)據(jù)庫(kù),再寫(xiě)一個(gè)應(yīng)用程序訪問(wèn)Microsoft的SQL Server。不但如此,使用Java語(yǔ)言編寫(xiě)的應(yīng)用程序可以在任何支持Java的平臺(tái)上運(yùn)行,不必在不同的平臺(tái)上開(kāi)發(fā)不同的應(yīng)用程序。簡(jiǎn)單地說(shuō),JDBC能完成下列三件事:1. 同一個(gè)數(shù)據(jù)庫(kù)建立連接;2. 向數(shù)據(jù)庫(kù)建立連接;3. 處理數(shù)據(jù)庫(kù)返回的結(jié)果。JDBC是一種通用低層的應(yīng)用程序編程接口,它在不同的數(shù)據(jù)庫(kù)功能模塊的層次上提供一個(gè)統(tǒng)一的用戶界面。說(shuō)JDBC是一處低級(jí)的API,是指它直接調(diào)用SQL命令,它比其他的一些數(shù)據(jù)庫(kù)連接API要容易使用些,但它有同樣可以作為更高級(jí)的,用戶辦面更友好的API或開(kāi)發(fā)工具基礎(chǔ)。很多可視化的Java開(kāi)發(fā)
13、工具,如Visual Age For Java、Visual Caf、J+等都提供了基于JDBC的更面向用戶的類(lèi)和包,直接將關(guān)系數(shù)據(jù)庫(kù)的表或視圖映射為Java類(lèi),程序員通過(guò)可視化工具直接對(duì)Java對(duì)象進(jìn)行操作,而真正需要的SQL調(diào)用則根據(jù)程序員發(fā)出的對(duì)對(duì)象的各種屬性、方法的操作來(lái)自動(dòng)產(chǎn)生。另一種使用JDBC API 的方式為,用戶程序可以提供一個(gè)界面(如菜單等)讓用戶選擇對(duì)數(shù)據(jù)庫(kù)進(jìn)行的操作,選中一個(gè)任務(wù)后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應(yīng)的SQL命令以及Java程序。通過(guò)這處方式,用戶可以完成對(duì)數(shù)據(jù)庫(kù)的操作,即使他并不了解SQL語(yǔ)法以及JDBC編程。數(shù)據(jù)庫(kù)訪問(wèn)的三層結(jié)構(gòu)如
14、圖2.1所示,瀏覽器端程序要訪問(wèn)數(shù)據(jù)庫(kù),首先通過(guò)中間件,然后由中間件對(duì)數(shù)據(jù)庫(kù)操作權(quán)限進(jìn)行認(rèn)證,認(rèn)證通過(guò)才能對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。圖2.1 使用中間件的數(shù)據(jù)庫(kù)訪問(wèn)三層結(jié)構(gòu)用戶對(duì)數(shù)據(jù)庫(kù)的存取權(quán)限認(rèn)證是中間件中完成,對(duì)數(shù)據(jù)庫(kù)的查詢、插入、更新和刪除操作等都封裝在中間件中,該中間件位于服務(wù)器端,中間件對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作后,再將處理結(jié)果通過(guò)Web服務(wù)器返回到瀏覽器端用戶。這樣,在用戶端輸入的用戶名和密碼,可以通過(guò)加密算法進(jìn)行加密后在網(wǎng)絡(luò)上傳輸,在中間件中進(jìn)行解密認(rèn)證,然后再進(jìn)行數(shù)據(jù)庫(kù)的存取操作,數(shù)據(jù)庫(kù)存取權(quán)限的用戶名和密碼出現(xiàn)在位于服務(wù)器端的中間件中,這樣就更加安全。本系統(tǒng)采用的正是這樣的三層結(jié)構(gòu)的數(shù)據(jù)庫(kù)訪問(wèn)
15、模式。在三層模型中,命令將被發(fā)送到服務(wù)的”中間層”,而”中間層”將SQL語(yǔ)句發(fā)送到數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)處理SQL語(yǔ)句并將結(jié)果返回”中間層”,然后”中間層”將它們返回用戶。其模型如圖2.2所示。圖2.2 JDBC的三層模型因?yàn)椤敝虚g層”可以進(jìn)行對(duì)訪問(wèn)的控制并協(xié)同數(shù)據(jù)庫(kù)的更新,并且可以使用一個(gè)易用的高層API,這個(gè)API可以由“中間層”進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成低層的調(diào)用。所以在許多種情況下,三層模型可以提供更好的性能,本系統(tǒng)中所采用的就是此種模型。JDBC是JAVA應(yīng)用程序與數(shù)據(jù)庫(kù)的溝通橋梁。它提供了三項(xiàng)服務(wù)功能:一、與數(shù)據(jù)庫(kù)建立連接。二、將SQL語(yǔ)句傳遞給數(shù)據(jù)庫(kù)。三、從數(shù)據(jù)庫(kù)取得SQL語(yǔ)句的執(zhí)行結(jié)果。當(dāng)JDB
16、C要與數(shù)據(jù)庫(kù)建立連接前,首先,它必須先取得連接此數(shù)據(jù)庫(kù)的JDBC驅(qū)動(dòng)程序,Class.forName()即是在執(zhí)行此項(xiàng)工作。建立數(shù)據(jù)庫(kù)連接的第一步驟就是將JDBC驅(qū)動(dòng)程序的類(lèi)載入至JVM(Java VirtualL Machine)中,本系統(tǒng)中利用java.lang.Class類(lèi)內(nèi)的forName()靜態(tài)函數(shù)依據(jù)指定的類(lèi)名稱(chēng),將JDBC驅(qū)動(dòng)程序載入進(jìn)來(lái)。完成載入驅(qū)動(dòng)程序的步驟后,必須使用java.sal.DriverManager類(lèi)所提供的getConnection()靜態(tài)函數(shù),取得與數(shù)據(jù)庫(kù)間的連接對(duì)象。此連接對(duì)象的類(lèi)類(lèi)型為java.sal.Connection,必須通過(guò)它才能將SQL指令傳遞
17、給數(shù)據(jù)庫(kù),而執(zhí)行結(jié)果也需要通過(guò)連接對(duì)象來(lái)取得。當(dāng)取得連接對(duì)象后,還必須取得Statement對(duì)象才能對(duì)數(shù)據(jù)庫(kù)執(zhí)行SQL指令。Statement主要實(shí)現(xiàn)兩個(gè)功能:執(zhí)行SQL語(yǔ)句以及取得執(zhí)行結(jié)果。在java.sql.Statement的sql對(duì)象中執(zhí)行查詢或修改命令的函數(shù)后傳回的是一個(gè)ResultSet 對(duì)象,這個(gè)對(duì)象提供了一個(gè)存取SQL執(zhí)行結(jié)果的管道,以便通過(guò)它將表格數(shù)據(jù)從數(shù)據(jù)庫(kù)中取出。每個(gè)Statement對(duì)象只能產(chǎn)生一個(gè)ResultSet 對(duì)象。數(shù)據(jù)庫(kù)連接如圖2.3所示:圖2.3 數(shù)據(jù)庫(kù)的連接處理數(shù)據(jù)庫(kù)的連接處理具體實(shí)現(xiàn)如下:/建立JDBCODBC橋sun.jdbc.odbc.JdbcOdb
18、cDriver;/橋建立不成功時(shí)的錯(cuò)誤處理catch(ClassNotFoundException event)/建立與數(shù)據(jù)庫(kù)的連接,并發(fā)送SQL查詢語(yǔ)句,將結(jié)果保存到rs對(duì)象中Con=建立JDBCODBC橋Sql=SQL查詢語(yǔ)句執(zhí)行查詢Rs=返回結(jié)果/SQL出錯(cuò)處理 catch(SQLException e1)2.6 SQL Server簡(jiǎn)介SQL SERVER 是Microsoft在關(guān)系數(shù)據(jù)庫(kù)管系統(tǒng)(RDBMS)方面的開(kāi)發(fā)成果。其主要目的是盡可能快地存儲(chǔ)、管理和檢索大量數(shù)據(jù)。我們將使用SQL SERVER存儲(chǔ)與知識(shí)系統(tǒng)網(wǎng)站相關(guān)的所有信息,這些信息會(huì)由應(yīng)用程序邏輯動(dòng)態(tài)放置在網(wǎng)頁(yè)中。SQL S
19、erver是Microsoft 公司推出的SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng)的最新版本該版本繼承了SQL Server 7.0 版本的優(yōu)點(diǎn)同時(shí)又比它增加了許多更先進(jìn)的功能具有使用方便可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn)可跨越從運(yùn)行Microsoft Windows 2000 的膝上型電腦到運(yùn)行Microsoft Windows XP的大型多處理器的服務(wù)器等多種平臺(tái)使用。2.7 “結(jié)構(gòu)化查詢語(yǔ)言”(SQL)簡(jiǎn)介SQL全稱(chēng)是“結(jié)構(gòu)化查詢語(yǔ)言(Structured Query Language)”,最早是IBM的圣約瑟研究實(shí)驗(yàn)室為其關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)SYSTEM R開(kāi)發(fā)的一種查詢語(yǔ)言,它的前身是S
20、QUARE語(yǔ)言。SQL語(yǔ)言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,簡(jiǎn)單易學(xué),所以自從IBM公司1981年推出以來(lái),SQL語(yǔ)言得到了廣泛的應(yīng)用。目前,SQL語(yǔ)言已被確定為關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的國(guó)際標(biāo)準(zhǔn),被絕大多數(shù)商品化關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)采用,如Oracle 、Sybase、DB2、Informix、SQL Server這些數(shù)據(jù)庫(kù)管理系統(tǒng)都支持SQL語(yǔ)言作為查詢語(yǔ)言。結(jié)構(gòu)化查詢語(yǔ)言SQL是一種介于關(guān)系代數(shù)與關(guān)系演算之間的語(yǔ)言,其功能包括查詢、操縱、定義和控制四個(gè)方面,是一個(gè)通用的功能極強(qiáng)的關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言。在SQL語(yǔ)言中不需要告訴SQL如何訪問(wèn)數(shù)據(jù)庫(kù),只要告訴SQL需要數(shù)據(jù)庫(kù)做什么。SQL廣泛地被采用正說(shuō)明了它的優(yōu)點(diǎn),使全部
21、用戶,包括應(yīng)用程序員、DBA管理員和終端用戶受益非淺。1、非過(guò)程化語(yǔ)言SQL是一個(gè)非過(guò)程化的語(yǔ)言,因?yàn)樗淮翁幚硪粋€(gè)記錄,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航。SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對(duì)單個(gè)記錄進(jìn)行操作,可操作記錄集。所有SQL 語(yǔ)句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語(yǔ)句的結(jié)果作為另一條SQL語(yǔ)句的輸入。SQL不要求用戶指定對(duì)數(shù)據(jù)的存放方法。2.8 BS模式與C/S模式的比較分析C/S模式主要由客戶應(yīng)用程序(Client)、服務(wù)器管理程序(Server)和中間件(middleware)三個(gè)部件組成。客戶應(yīng)用程序是系統(tǒng)中用戶與數(shù)據(jù)進(jìn)行交互的部件。服務(wù)器程序負(fù)責(zé)有效
22、地管理系統(tǒng)資源,如管理一個(gè)信息數(shù)據(jù)庫(kù),其主要工作是當(dāng)多個(gè)客戶并發(fā)地請(qǐng)求服務(wù)器上的相同資源時(shí),對(duì)這些資源進(jìn)行最優(yōu)化管理。中間件負(fù)責(zé)聯(lián)結(jié)客戶應(yīng)用程序與服務(wù)器管理程序,協(xié)同完成一個(gè)作業(yè),以滿足用戶查詢管理數(shù)據(jù)的要求。 B/S模式是一種以Web技術(shù)為基礎(chǔ)的新型的MIS系統(tǒng)平臺(tái)模式。把傳統(tǒng)C/S模式中的服務(wù)器部分分解為一個(gè)數(shù)據(jù)服務(wù)器與一個(gè)或多個(gè)應(yīng)用服務(wù)器(Web服務(wù)器),從而構(gòu)成一個(gè)三層結(jié)構(gòu)的客戶服務(wù)器體系。 第一層客戶機(jī)是用戶與整個(gè)系統(tǒng)的接口。客戶的應(yīng)用程序精簡(jiǎn)到一個(gè)通用的瀏覽器軟件,如NetscapeNavigator,微軟公司的IE等。瀏覽器將HTML代碼轉(zhuǎn)化成圖文并茂的網(wǎng)頁(yè)。網(wǎng)頁(yè)還具備一定的交互
23、功能,允許用戶在網(wǎng)頁(yè)提供的申請(qǐng)表上輸入信息提交給后臺(tái),并提出處理請(qǐng)求。這個(gè)后臺(tái)就是第二層的Web服務(wù)器。 第二層Web服務(wù)器將啟動(dòng)相應(yīng)的進(jìn)程來(lái)響應(yīng)這一請(qǐng)求,并動(dòng)態(tài)生成一串HTML代碼,其中嵌入處理的結(jié)果,返回給客戶機(jī)的瀏覽器。如果客戶機(jī)提交的請(qǐng)求包括數(shù)據(jù)的存取,Web服務(wù)器還需與數(shù)據(jù)庫(kù)服務(wù)器協(xié)同完成這一處理工作。 第三層數(shù)據(jù)庫(kù)服務(wù)器的任務(wù)類(lèi)似于C/S模式,負(fù)責(zé)協(xié)調(diào)不同的Web服務(wù)器發(fā)出的SQL請(qǐng)求,管理數(shù)據(jù)庫(kù)。 B/S模式的優(yōu)勢(shì) 首先它簡(jiǎn)化了客戶端。它無(wú)需象C/S模式那樣在不同的客戶機(jī)上安裝不同的客戶應(yīng)用程序,而只需安裝通用的瀏覽器軟件。這樣不但可以節(jié)省客戶機(jī)的硬盤(pán)空間與內(nèi)存,而且使安裝過(guò)程更
24、加簡(jiǎn)便、網(wǎng)絡(luò)結(jié)構(gòu)更加靈活。假設(shè)一個(gè)企業(yè)的決策層要開(kāi)一個(gè)討論庫(kù)存問(wèn)題的會(huì)議,他們只需從會(huì)議室的計(jì)算機(jī)上直接通過(guò)瀏覽器查詢數(shù)據(jù),然后顯示給大家看就可以了。甚至與會(huì)者還可以把筆記本電腦聯(lián)上會(huì)議室的網(wǎng)絡(luò)插口,自己來(lái)查詢相關(guān)的數(shù)據(jù)。其次,它簡(jiǎn)化了系統(tǒng)的開(kāi)發(fā)和維護(hù)。系統(tǒng)的開(kāi)發(fā)者無(wú)須再為不同級(jí)別的用戶設(shè)計(jì)開(kāi)發(fā)不同的客戶應(yīng)用程序了,只需把所有的功能都實(shí)現(xiàn)在Web服務(wù)器上,并就不同的功能為各個(gè)組別的用戶設(shè)置權(quán)限就可以了。各個(gè)用戶通過(guò)HTTP請(qǐng)求在權(quán)限范圍內(nèi)調(diào)用Web服務(wù)器上不同處理程序,從而完成對(duì)數(shù)據(jù)的查詢或修改?,F(xiàn)代企業(yè)面臨著日新月異的競(jìng)爭(zhēng)環(huán)境,對(duì)企業(yè)內(nèi)部運(yùn)作機(jī)制的更新與調(diào)整也變得逐漸頻繁。相對(duì)于C/S,B/
25、S的維護(hù)具有更大的靈活性。當(dāng)形勢(shì)變化時(shí),它無(wú)須再為每一個(gè)現(xiàn)有的客戶應(yīng)用程序升級(jí),而只需對(duì)Web服務(wù)器上的服務(wù)處理程序進(jìn)行修訂。這樣不但可以提高公司的運(yùn)作效率,還省去了維護(hù)時(shí)協(xié)調(diào)工作的不少麻煩。如果一個(gè)公司有上千臺(tái)客戶機(jī),并且分布在不同的地點(diǎn),那么便于維護(hù)將會(huì)顯得更加重要。 再次,它使用戶的操作變得更簡(jiǎn)單。對(duì)于C/S模式,客戶應(yīng)用程序有自己特定的規(guī)格,使用者需要接受專(zhuān)門(mén)培訓(xùn)。而采用B/S模式時(shí),客戶端只是一個(gè)簡(jiǎn)單易用的瀏覽器軟件。無(wú)論是決策層還是操作層的人員都無(wú)需培訓(xùn),就可以直接使用。B/S模式的這種特性,還使MIS系統(tǒng)維護(hù)的限制因素更少。 最后,B/S特別適用于網(wǎng)上信息發(fā)布,使得傳統(tǒng)的MIS的
26、功能有所擴(kuò)展。這是C/S所無(wú)法實(shí)現(xiàn)的。而這種新增的網(wǎng)上信息發(fā)布功能恰是現(xiàn)代企業(yè)所需的。這使得企業(yè)的大部分書(shū)面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企業(yè)行政手續(xù)簡(jiǎn)化,節(jié)省人力物力。 鑒于B/S相對(duì)于C/S的先進(jìn)性,B/S逐漸成為一種流行的MIS系統(tǒng)平臺(tái)。各軟件公司紛紛推出自己的Internet方案,基于Web的財(cái)務(wù)系統(tǒng)、基于Web的ERP。一些企業(yè)已經(jīng)領(lǐng)先一步開(kāi)始使用它,并且收到了一定的成效。 B/S模式的新穎與流行,和在某些方面相對(duì)于C/S的巨大改進(jìn),使B/S成了MIS系統(tǒng)平臺(tái)的首選。2.9 JDBC介紹JDBC(Java Data Base Connectivity,java數(shù)
27、據(jù)庫(kù)連接)是一種用于執(zhí)行SQL語(yǔ)句的Java API,可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn),它由一組用Java語(yǔ)言編寫(xiě)的類(lèi)和接口組成。JDBC為工具/數(shù)據(jù)庫(kù)開(kāi)發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫(kù)開(kāi)發(fā)人員能夠用純 Java API 編寫(xiě)數(shù)據(jù)庫(kù)應(yīng)用程序,同時(shí),JDBC也是個(gè)商標(biāo)名。 有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語(yǔ)句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問(wèn)Sybase數(shù)據(jù)庫(kù)專(zhuān)門(mén)寫(xiě)一個(gè)程序,為訪問(wèn)Oracle數(shù)據(jù)庫(kù)又專(zhuān)門(mén)寫(xiě)一個(gè)程序,或?yàn)樵L問(wèn)Informix數(shù)據(jù)庫(kù)又編寫(xiě)另一個(gè)程序等等,程序員只需用JDBC API寫(xiě)一個(gè)程序就夠了,它可向相應(yīng)數(shù)
28、據(jù)庫(kù)發(fā)送SQL調(diào)用。同時(shí),將Java語(yǔ)言和JDBC結(jié)合起來(lái)使程序員不必為不同的平臺(tái)編寫(xiě)不同的應(yīng)用程序,只須寫(xiě)一遍程序就可以讓它在任何平臺(tái)上運(yùn)行,這也是Java語(yǔ)言“編寫(xiě)一次,處處運(yùn)行”的優(yōu)勢(shì)。Java數(shù)據(jù)庫(kù)連接體系結(jié)構(gòu)是用于Java應(yīng)用程序連接數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)方法。JDBC對(duì)Java程序員而言是API,對(duì)實(shí)現(xiàn)與數(shù)據(jù)庫(kù)連接的服務(wù)提供商而言是接口模型。作為API,JDBC為程序開(kāi)發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫(kù)廠商及第三方中間件廠商實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接提供了標(biāo)準(zhǔn)方法。JDBC使用已有的SQL標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫(kù)連接標(biāo)準(zhǔn),如ODBC之間的橋接。JDBC實(shí)現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡(jiǎn)單、嚴(yán)格類(lèi)型定義且
29、高性能實(shí)現(xiàn)的接口。Java 具有堅(jiān)固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動(dòng)下載等特性,是編寫(xiě)數(shù)據(jù)庫(kù)應(yīng)用程序的杰出語(yǔ)言。所需要的只是 Java應(yīng)用程序與各種不同數(shù)據(jù)庫(kù)之間進(jìn)行對(duì)話的方法。而 JDBC 正是作為此種用途的機(jī)制。 JDBC 擴(kuò)展了 Java 的功能。例如,用 Java 和 JDBC API 可以發(fā)布含有 applet 的網(wǎng)頁(yè),而該 applet 使用的信息可能來(lái)自遠(yuǎn)程數(shù)據(jù)庫(kù)企業(yè)也可以用 JDBC 通過(guò) Intranet 將所有職員連到一個(gè)或多個(gè)內(nèi)部數(shù)據(jù)庫(kù)中(即使這些職員所用的計(jì)算機(jī)有 Windows、 Macintosh 和UNIX 等各種不同的操作系統(tǒng))。隨著越來(lái)越多的程序員開(kāi)
30、始使用Java 編程語(yǔ)言,對(duì)從 Java 中便捷地訪問(wèn)數(shù)據(jù)庫(kù)的要求也在日益增加。 MIS 管理員們都喜歡 Java 和 JDBC 的結(jié)合,因?yàn)樗剐畔鞑プ兊萌菀缀徒?jīng)濟(jì)。企業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫(kù),并能便捷地存取信息,即使這些信息是儲(chǔ)存在不同數(shù)據(jù)庫(kù)管理系統(tǒng)上。新程序的開(kāi)發(fā)期很短。安裝和版本控制將大為簡(jiǎn)化。程序員可只編寫(xiě)一遍應(yīng)用程序或只更新一次,然后將它放到服務(wù)器上,隨后任何人就都可得到最新版本的應(yīng)用程序。對(duì)于商務(wù)上的銷(xiāo)售信息服務(wù), Java 和JDBC 可為外部客戶提供獲取信息更新的更好方法。簡(jiǎn)單地說(shuō),JDBC 可做三件事:與數(shù)據(jù)庫(kù)建立連接、發(fā)送 SQL 語(yǔ)句并處理結(jié)果。下列代碼段給出了
31、以上三步的基本示例: Connection con = DriverManager.getConnection(jdbc:odbc:wombat,login, password); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(SELECT a, b, c FROM Table1); while (rs.next() int x = rs.getInt(a); String s = rs.getString(b); float f = rs.getFloat(c); 上述代碼對(duì)基于JDBC的數(shù)據(jù)
32、庫(kù)訪問(wèn)做了經(jīng)典的總結(jié)2、統(tǒng)一的語(yǔ)言SQL可用于所有用戶的DB活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫(kù)管理員、 應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類(lèi)型的終端用戶?;镜腟QL 命令只需很少時(shí)間就能學(xué)會(huì),高級(jí)的命令在幾天內(nèi)便可掌握。以前的數(shù)據(jù)庫(kù)管理系統(tǒng)為上述各類(lèi)操作提供單獨(dú)的語(yǔ)言,而SQL 將全部任務(wù)統(tǒng)一在一種語(yǔ)言中。3、是所有關(guān)系數(shù)據(jù)庫(kù)的公共語(yǔ)言由于所有主要的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)都支持SQL語(yǔ)言,用戶可將使用SQL的技能從一個(gè)RDBMS轉(zhuǎn)到另一個(gè)。所有用SQL編寫(xiě)的程序都是可以移植的。3 系統(tǒng)分析設(shè)計(jì)3.1 可行性研究該階段通過(guò)對(duì)系統(tǒng)目標(biāo)的初步調(diào)研和分析,提出可行性方案并進(jìn)行論證。我們?cè)谶@里主要從技術(shù)
33、可行性、經(jīng)濟(jì)可行性和操作可行等方面進(jìn)行分析。3.1.1 經(jīng)濟(jì)可行性開(kāi)發(fā)該系統(tǒng)所需的相關(guān)資料可以通過(guò)已存在的相關(guān)系統(tǒng)進(jìn)行調(diào)查采集,所需的其他應(yīng)用軟件、硬件系統(tǒng)也易于獲得.因此,開(kāi)發(fā)成本較低。而引進(jìn)使用本系統(tǒng)后,與傳統(tǒng)方式相比,具有高效率、低成本、高質(zhì)量的特點(diǎn),可以節(jié)省不少人力、物力及財(cái)力。所以,從經(jīng)濟(jì)的角度來(lái)看,該系統(tǒng)可行。3.1.2 技術(shù)可行性技術(shù)可行性要考慮現(xiàn)有的技術(shù)條件是否能夠順利完成開(kāi)發(fā)工作,軟硬件配置是否滿足開(kāi)發(fā)的需求等。本系統(tǒng)用的是JSP開(kāi)發(fā)語(yǔ)言,調(diào)試相對(duì)簡(jiǎn)單,當(dāng)前的計(jì)算機(jī)硬件配置也完全能滿足開(kāi)發(fā)的需求,因此在技術(shù)上是絕對(duì)可行的。軟件方面:由于目前單機(jī)模式相對(duì)發(fā)展成熟,故軟件的開(kāi)發(fā)平
34、臺(tái)成熟可行,它們速度快、容量大、可靠性能高、價(jià)格低,完全能滿足系統(tǒng)的需求。本系統(tǒng)的開(kāi)發(fā),是典型的Mis開(kāi)發(fā)。采用JSP編程語(yǔ)言,已無(wú)技術(shù)上的問(wèn)題。3.1.3 運(yùn)行可行性運(yùn)行可行性是對(duì)組織結(jié)構(gòu)的影響,現(xiàn)有人員和機(jī)構(gòu)和環(huán)境對(duì)系統(tǒng)的適應(yīng)性及人員培訓(xùn)補(bǔ)充計(jì)劃的可行性。當(dāng)前信息化技術(shù)已經(jīng)相當(dāng)普及,各類(lèi)操作人員水平都有相當(dāng)?shù)母叨?,所以在運(yùn)行上是可行性的。3.1.4 時(shí)間可行性從時(shí)間上看,在兩個(gè)月的時(shí)間里學(xué)習(xí)相關(guān)知識(shí),并開(kāi)發(fā)系統(tǒng),時(shí)間上是有點(diǎn)緊,但是不是不可能實(shí)現(xiàn),通過(guò)兩個(gè)多月的努力功能基本實(shí)現(xiàn)。3.1.5 法律可行性 所有技術(shù)資料都為合法。 開(kāi)發(fā)過(guò)程中不存在知識(shí)產(chǎn)權(quán)問(wèn)題。 未抄襲任何系統(tǒng),不存在侵犯版權(quán)問(wèn)
35、題。 開(kāi)發(fā)過(guò)程中未涉及任何法律責(zé)任。綜上所述,本系統(tǒng)的開(kāi)發(fā)從技術(shù)上、從經(jīng)濟(jì)上、從法律上都是完全可靠的。3.2 需求分析需求分析是軟件設(shè)計(jì)的一個(gè)重要的環(huán)節(jié)。本階段對(duì)系統(tǒng)管理系統(tǒng)的應(yīng)用情況作全面調(diào)查,以確定系統(tǒng)目標(biāo)。確定用戶的需求。用戶對(duì)系統(tǒng)的需求我們從以下幾方面進(jìn)行分析。3.2.1 系統(tǒng)需求用JSP開(kāi)發(fā)此系統(tǒng)基于B/S模式,系統(tǒng)軟件和數(shù)據(jù)集中存放于服務(wù)器中,軟件的安裝與升級(jí)在服務(wù)器上進(jìn)行。所有的工作基于瀏覽器,安裝、使用、維護(hù)、升級(jí)十分簡(jiǎn)單。3.2.2 性能需求為了保證系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行。系統(tǒng)處理的準(zhǔn)確性和及時(shí)性是系統(tǒng)的必要性能。由于本系統(tǒng)的添加功能對(duì)于整個(gè)系統(tǒng)的功能和性
36、能完成舉足輕重。作為系統(tǒng)的很多數(shù)據(jù)來(lái)源,其準(zhǔn)確性和及時(shí)性很大程度上決定了系統(tǒng)的成敗。在系統(tǒng)開(kāi)發(fā)過(guò)程中,必須采用一定的方法保證系統(tǒng)的準(zhǔn)確性和及時(shí)性。3.4系統(tǒng)功能設(shè)計(jì)系統(tǒng)要求能夠?qū)崿F(xiàn)以下功能:(1) 要求學(xué)生能夠進(jìn)行選課。(2) 要求學(xué)生能夠?qū)處熯M(jìn)行教學(xué)質(zhì)量評(píng)估。(3) 要求教師能夠查看評(píng)教,以及對(duì)同行進(jìn)行教學(xué)質(zhì)量評(píng)估。(4) 要求管理員能夠?qū)W(xué)生,教師信息進(jìn)行插入,刪除等操作(5) 要求管理員能夠?qū)虒W(xué)質(zhì)量評(píng)估進(jìn)行統(tǒng)計(jì)。3.5 系統(tǒng)設(shè)計(jì)思想本系統(tǒng)存在3種用戶:學(xué)生、教師、管理員。學(xué)生和教師用管理員給定的帳號(hào)、密碼登陸頁(yè)面進(jìn)行操作。登陸判定上首次基于數(shù)據(jù)庫(kù)驗(yàn)證,然后把用戶信息寫(xiě)進(jìn)session
37、,然后其他頁(yè)面采用session驗(yàn)證。 系統(tǒng)結(jié)構(gòu)上采用頁(yè)面鑲嵌程序和語(yǔ)句,工作原理如下圖所示。操作請(qǐng)求,運(yùn)用SQL語(yǔ)句操作數(shù)據(jù)庫(kù)返回查詢結(jié)果集或操作結(jié)果SQL Server 2000用戶界面數(shù)據(jù)庫(kù)存儲(chǔ)層教師教學(xué)質(zhì)量評(píng)估系統(tǒng)操作界面圖3.1 系統(tǒng)工作原理圖在系統(tǒng)結(jié)構(gòu)中,用戶界面層通過(guò)統(tǒng)一的接口向數(shù)據(jù)庫(kù)存儲(chǔ)層發(fā)送請(qǐng)求,數(shù)據(jù)庫(kù)存儲(chǔ)層收到請(qǐng)求處理之后把數(shù)據(jù)返回到用戶界面層。3.6 數(shù)據(jù)庫(kù)分析數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)完后,將數(shù)據(jù)概念結(jié)構(gòu)轉(zhuǎn)化為數(shù)據(jù)庫(kù)系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)。在設(shè)計(jì)表的過(guò)程中,由于每個(gè)表設(shè)計(jì)為獨(dú)立的表,所以沒(méi)有設(shè)計(jì)主鍵。系統(tǒng)處理數(shù)據(jù)庫(kù)的數(shù)據(jù),就根據(jù)表內(nèi)字段的內(nèi)容來(lái)進(jìn)行查詢,
38、刪除,更新,插入等。1. 學(xué)生表2. 教師表3. 一級(jí)指標(biāo)表4. 二級(jí)指標(biāo)表5. 分?jǐn)?shù)表4總體設(shè)計(jì)4.1系統(tǒng)功能設(shè)計(jì)本系統(tǒng)分為學(xué)生操作界面、教師操作界面和管理員操作界面。學(xué)生界面能完成如下操作。(1) 個(gè)人信息:通過(guò)該功能模塊,學(xué)生能查看自己的信息。(2) 教學(xué)質(zhì)量評(píng)價(jià):通過(guò)該功能模塊,學(xué)生對(duì)授課教師進(jìn)行評(píng)教。教師界面能完成如下操作:(1) 查看我的評(píng)價(jià):通過(guò)該功能模塊,教師查看自己的評(píng)價(jià)分?jǐn)?shù)。管理員界面能完成如下操作:(1) 學(xué)生管理:通過(guò)該功能模塊,管理員能夠查看學(xué)生信息,以及對(duì)學(xué)生的添加、更新、刪除。(2) 教師管理:通過(guò)該功能模塊,管理員能夠查看教師信息,以及對(duì)教師的添加、更新、刪除。
39、(3) 評(píng)價(jià)一級(jí)指標(biāo):通過(guò)該功能模塊,管理員能夠添加和管理一級(jí)指標(biāo)信息。(4) 評(píng)價(jià)二級(jí)指標(biāo):通過(guò)該功能模塊,管理員能夠添加和管理二級(jí)指標(biāo)信息。4.2用戶登陸流程圖通過(guò)系統(tǒng)功能設(shè)計(jì),畫(huà)出用戶登陸流程圖如下:登錄開(kāi)始是否登錄上查詢相關(guān)信息結(jié)束注冊(cè)是否是管理員員查詢和修改相關(guān)信息圖4.1 用戶登錄流程圖該版塊是對(duì)于用戶登陸的管理和操作,其中涉及到登陸的權(quán)限問(wèn)題,當(dāng)用戶名為admin或教師時(shí),可以對(duì)所有信息進(jìn)行操作,包括更新,查詢,刪除等等。普通用戶只要瀏覽信息的權(quán)限。4.3 系統(tǒng)功能流程圖系統(tǒng)的功能流程如下圖:查看得分開(kāi)始選擇用戶登錄教師管理身份認(rèn)證管理員教師獲得用戶身份查看信息評(píng)價(jià)學(xué)生學(xué)生管理指
40、標(biāo)管理查看信息圖4.2系統(tǒng)功能流程圖5 界面設(shè)計(jì)5.1 系統(tǒng)頁(yè)面主體設(shè)計(jì)系統(tǒng)登陸頁(yè)面設(shè)計(jì)如圖:圖5.1登陸界面圖5.2 主界面在使用本系統(tǒng)時(shí)均需要登錄后,才可使用,登錄時(shí)會(huì)讓你輸入用戶名,及用戶密碼。用戶名均是管理員分配給每位用戶的且具有唯一性,用戶自己不可更改,但是用戶自己可以更改密碼。在登錄時(shí),系統(tǒng)根據(jù)你輸入的用戶名和密碼,給出不同的提示信息,如果用戶名和密碼正確,將會(huì)提示進(jìn)入學(xué)生主頁(yè)面進(jìn)行操作,如果用戶名和密碼不正確,將會(huì)提示返回登陸主頁(yè)面重新登陸。其中username和userpassword是利用JSP中request對(duì)象的getParameter方法從表單中讀取的值,同時(shí)在代碼設(shè)計(jì)
41、中將值傳遞給JSP中的session對(duì)象,方便在其他頁(yè)面中使用。5.2.1 學(xué)生登錄登錄后的主界面如下:5.2.2 教師登錄登錄后的主界面如下:5.2.3 管理員登錄登錄后的主界面如下:6 測(cè)試及性能分析6.1 程序調(diào)試在設(shè)計(jì)系統(tǒng)的過(guò)程中,存在一些錯(cuò)誤是必然的。對(duì)于語(yǔ)句的語(yǔ)法錯(cuò)誤,在程序運(yùn)行時(shí)自動(dòng)提示,并請(qǐng)求立即糾正,因此,這類(lèi)錯(cuò)誤比較容易發(fā)現(xiàn)和糾正。但另一類(lèi)錯(cuò)誤是在程序執(zhí)行時(shí)由于不正確的操作或?qū)δ承?shù)據(jù)的計(jì)算公式的邏輯錯(cuò)誤導(dǎo)致的錯(cuò)誤結(jié)果。這類(lèi)錯(cuò)誤隱蔽性強(qiáng),有時(shí)會(huì)出現(xiàn),有時(shí)又不出現(xiàn),因此,對(duì)這一類(lèi)動(dòng)態(tài)發(fā)生的錯(cuò)誤的排查是耗時(shí)費(fèi)力的。6.2 程序的測(cè)試6.2.1 測(cè)試的重要性及目的(1)測(cè)試的重要
42、性軟件的測(cè)試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件測(cè)試學(xué)僅處于運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。近來(lái),軟件工程界趨向于一種新的觀點(diǎn),即認(rèn)為軟件生命周期每一階段中都應(yīng)包含測(cè)試,從而檢驗(yàn)本階段的成果是否接近預(yù)期的目標(biāo),盡可能早的發(fā)現(xiàn)錯(cuò)誤并加以修正,如果不在早期階段進(jìn)行測(cè)試,錯(cuò)誤的延時(shí)擴(kuò)散常常會(huì)導(dǎo)致最后成品測(cè)試的巨大困難。 事實(shí)上,對(duì)于軟件來(lái)講,不論采用什么技術(shù)和什么方法,軟件中仍然會(huì)有錯(cuò)。采用新的語(yǔ)言、先進(jìn)的開(kāi)發(fā)方式、完善的開(kāi)發(fā)過(guò)程,可以減少錯(cuò)誤的引入,但是不可能完全杜絕軟件中的錯(cuò)誤,這些引入的錯(cuò)誤需要測(cè)試來(lái)找出,軟件中的錯(cuò)誤密度也需要測(cè)試來(lái)進(jìn)行
43、估計(jì)。測(cè)試是所有工程學(xué)科的基本組成單元,是軟件開(kāi)發(fā)的重要部分。自有程序設(shè)計(jì)的那天起測(cè)試就一直伴隨著。統(tǒng)計(jì)表明,在典型的軟件開(kāi)發(fā)項(xiàng)目中,軟件測(cè)試工作量往往占軟件開(kāi)發(fā)總工作量的40以上。而在軟件開(kāi)發(fā)的總成本中,用在測(cè)試上的開(kāi)銷(xiāo)要占30到50。如果把維護(hù)階段也考慮在內(nèi),討論整個(gè)軟件生存期時(shí),測(cè)試的成本比例也許會(huì)有所降低,但實(shí)際上維護(hù)工作相當(dāng)于二次開(kāi)發(fā),乃至多次開(kāi)發(fā),其中必定還包含有許多測(cè)試工作。 在實(shí)踐中,軟件測(cè)試的困難常常使人望而卻步或敷衍了事,這是由于對(duì)測(cè)試仍然存在一些不正確的看法和錯(cuò)誤的態(tài)度,這包括: 認(rèn)為測(cè)試工作不如設(shè)計(jì)和編碼那樣容易取得進(jìn)展難以給測(cè)試人員某種成就感; 以發(fā)現(xiàn)軟件錯(cuò)誤為目標(biāo)的
44、測(cè)試是非建設(shè)性的,甚至是破壞性的,測(cè)試中發(fā)現(xiàn)錯(cuò)位是對(duì)責(zé)任者工作的一種否定; 測(cè)試工作枯燥無(wú)味,不能引起人們的興趣; 測(cè)試工作是艱苦而細(xì)致的工作; 對(duì)自己編寫(xiě)的程序盲目自信,在發(fā)現(xiàn)錯(cuò)誤后,顧慮別人對(duì)自己的開(kāi)發(fā)能力的看法。 這些觀點(diǎn)對(duì)軟件測(cè)試工作是極為不利的,必須澄清認(rèn)識(shí)、端正態(tài)度,才可能提高軟件產(chǎn)品的質(zhì)量。 (2)測(cè)試的目的 如果測(cè)試的目的是為了盡可能多地找出錯(cuò)誤,那么測(cè)試就應(yīng)該直接針對(duì)軟件比較復(fù)雜的部分或是以前出錯(cuò)比較多的位置。 軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程; 測(cè)試是為了證明程序有錯(cuò),而不是證明程序無(wú)錯(cuò)誤; 一個(gè)好的測(cè)試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤; 一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今
45、未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。 這種觀點(diǎn)可以提醒人們測(cè)試要以查找錯(cuò)誤為中心,而不是為了演示軟件的正確功能。但是僅憑字面意思理解這一觀點(diǎn)可能會(huì)產(chǎn)生誤導(dǎo),認(rèn)為發(fā)現(xiàn)錯(cuò)誤是軟件測(cè)試的唯一目,查找不出錯(cuò)誤的測(cè)試就是沒(méi)有價(jià)值的,事實(shí)并非如此。 首先,測(cè)試并不僅僅是為了要找出錯(cuò)誤。通過(guò)分析錯(cuò)誤產(chǎn)生的原因和錯(cuò)誤的分布特征,可以幫助項(xiàng)目管理者發(fā)現(xiàn)當(dāng)前所采用的軟件過(guò)程的缺陷,以便改進(jìn)。同時(shí),這種分析也能幫助我們?cè)O(shè)計(jì)出有針對(duì)性地檢測(cè)方法,改善測(cè)試的有效性。其次,沒(méi)有發(fā)現(xiàn)錯(cuò)誤的測(cè)試也是有價(jià)值的,完整的測(cè)試是評(píng)定測(cè)試質(zhì)量的一種方法。6.2.2 測(cè)試的步驟與開(kāi)發(fā)過(guò)程類(lèi)似,測(cè)試過(guò)程也必須分步驟進(jìn)行,每個(gè)步驟在邏輯上是前一個(gè)步驟的繼續(xù)
46、。大型軟件系統(tǒng)通常由若干個(gè)子系統(tǒng)組成,每個(gè)子系統(tǒng)又由若干個(gè)模塊組成。因此,大型軟件系統(tǒng)的測(cè)試基本上由下述幾個(gè)步驟組成:(1)模塊測(cè)試 在這個(gè)測(cè)試步驟中所發(fā)現(xiàn)的往往是編碼和詳細(xì)設(shè)計(jì)的錯(cuò)誤。(2)系統(tǒng)測(cè)試 在這個(gè)測(cè)試步驟中發(fā)現(xiàn)的往往是軟件設(shè)計(jì)中的錯(cuò)誤,也可能發(fā)現(xiàn)需求說(shuō)明中的錯(cuò)誤。(3)驗(yàn)收測(cè)試 在這個(gè)測(cè)試步驟中發(fā)現(xiàn)的往往是系統(tǒng)需求說(shuō)明書(shū)中的錯(cuò)誤。6.2.3 測(cè)試的主要內(nèi)容為了保證測(cè)試的質(zhì)量,將測(cè)試過(guò)程分成幾個(gè)階段,即:代碼審查、單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試。 (1)單元測(cè)試 單元測(cè)試集中在檢查軟件設(shè)計(jì)的最小單位模塊上,通過(guò)測(cè)試發(fā)現(xiàn)實(shí)現(xiàn)該模塊的實(shí)際功能與定義該模塊的功能說(shuō)明不符合的情況,以
47、及編碼的錯(cuò)誤。 (2)集成測(cè)試 集成測(cè)試是將模塊按照設(shè)計(jì)要求組裝起來(lái)同時(shí)進(jìn)行測(cè)試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問(wèn)題。如一個(gè)模塊與另一個(gè)模塊可能有由于疏忽的問(wèn)題而造成有害影響;把子功能組合起來(lái)可能不產(chǎn)生預(yù)期的主功能;個(gè)別看起來(lái)是可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)構(gòu)可能有錯(cuò)誤等。 (3)確認(rèn)測(cè)試 確認(rèn)測(cè)試的目的是向未來(lái)的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測(cè)試后,已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗(yàn)證軟件的有效性,這就是確認(rèn)測(cè)試的任務(wù),即軟件的功能和性能如同用戶所合理期待的那樣。 (4)系統(tǒng)測(cè)試 軟件開(kāi)發(fā)完成以后,最終還
48、要與系統(tǒng)中其他部分配套運(yùn)行,進(jìn)行系統(tǒng)測(cè)試。包括恢復(fù)測(cè)試、安全測(cè)試、強(qiáng)度測(cè)試和性能測(cè)試等。 單獨(dú)對(duì)系統(tǒng)的測(cè)試主要從以下幾方面入手: 功能測(cè)試:測(cè)試是否滿足開(kāi)發(fā)要求,是否提供設(shè)計(jì)所描述的功能,是否用戶的需求都得到滿足。功能測(cè)試是系統(tǒng)測(cè)試最常用和必須的測(cè)試,通常還會(huì)以正式的軟件說(shuō)明書(shū)為測(cè)試標(biāo)準(zhǔn)。 強(qiáng)度測(cè)試及性能測(cè)試:測(cè)試系統(tǒng)能力最高實(shí)際限度,即軟件在一些超負(fù)荷情況下功能實(shí)現(xiàn)的情況。 安全測(cè)試:驗(yàn)證安裝在系統(tǒng)內(nèi)的保護(hù)機(jī)構(gòu)確實(shí)能夠?qū)ο到y(tǒng)進(jìn)行保護(hù),使之不受各種非常的干擾。針對(duì)本系統(tǒng)主要是對(duì)權(quán)限系統(tǒng)的測(cè)試和對(duì)無(wú)效數(shù)據(jù)、錯(cuò)數(shù)據(jù)、和非法數(shù)據(jù)干擾的能力的測(cè)試。經(jīng)過(guò)上述的測(cè)試過(guò)程對(duì)軟件進(jìn)行測(cè)試后,軟件基本滿足開(kāi)發(fā)的
49、要求,測(cè)試宣告結(jié)束。 結(jié) 論參考文獻(xiàn)1孫衛(wèi)琴,李洪成.Tomcat 與 Java Web 開(kāi)發(fā)技術(shù)詳解.電子工業(yè)出版社,2003年6月2BruceEckel.Java編程思想. 機(jī)械工業(yè)出版社,2003年10月3FLANAGAN.Java技術(shù)手冊(cè). 中國(guó)電力出版社,2002年6月4孫一林,彭波.Java數(shù)據(jù)庫(kù)編程實(shí)例. 清華大學(xué)出版社,2002年8月5LEE ANNE PHILLIPS.巧學(xué)活用HTML4.電子工業(yè)出版社,2004年8月6飛思科技產(chǎn)品研發(fā)中心.JSP應(yīng)用開(kāi)發(fā)詳解.電子工業(yè)出版社,2003年9月7耿祥義,張躍平.JSP實(shí)用教程. 清華大學(xué)出版社,2003年5月8孫涌.現(xiàn)代軟件工程.北京希望電子出版社,2003年8月9薩師煊,王珊.數(shù)據(jù)庫(kù)系統(tǒng)概論.高等教育出版社,2002年2月10Brown等.JSP編程指南(第二版). 電子工業(yè)出版社 ,2003年3月 11清宏計(jì)算機(jī)工作室.JSP編程技巧. 機(jī)械工業(yè)出
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)老院新冠疫情應(yīng)急處理方案
- 農(nóng)產(chǎn)品安全生產(chǎn)誠(chéng)信管理標(biāo)準(zhǔn)
- 學(xué)校網(wǎng)站內(nèi)容安全管理制度
- 非營(yíng)利組織作業(yè)公示制度建設(shè)
- 農(nóng)業(yè)開(kāi)發(fā)環(huán)境保護(hù)及文明施工方案
- 學(xué)校消防電施工方案設(shè)計(jì)
- 冷庫(kù)設(shè)計(jì)方案及其維護(hù)管理措施
- 電聲音響工程師崗位說(shuō)明書(shū)
- 汽車(chē)銷(xiāo)售顧問(wèn)崗位說(shuō)明書(shū)
- 金融產(chǎn)品市場(chǎng)推廣顧問(wèn)協(xié)議書(shū)
- 《PCBA樣品承認(rèn)書(shū)》模版
- 衛(wèi)青和霍去病課件
- 《設(shè)計(jì)制作-家用電器要維護(hù)(第1課時(shí))》(說(shuō)課稿)四年級(jí)上冊(cè)小學(xué)綜合實(shí)踐活動(dòng)蘇少版
- 七管收音機(jī)(DS05-7B)課件
- 畢業(yè)設(shè)計(jì)(論文)-長(zhǎng)鍵軸加工工藝及銑槽夾具設(shè)計(jì)
- 醫(yī)務(wù)部運(yùn)用PDCA循環(huán)提高醫(yī)院日間手術(shù)量PDCA成果匯報(bào)
- 高中教學(xué)經(jīng)驗(yàn)交流發(fā)言稿
- 設(shè)備維保施工組織設(shè)計(jì)
- 2023年高中學(xué)業(yè)水平測(cè)試計(jì)算機(jī)考試操作練習(xí)題
- 醫(yī)院出入口安檢工作記錄表范本
- 小學(xué)希望之星看圖說(shuō)話分類(lèi)整理
評(píng)論
0/150
提交評(píng)論