錢玉環(huán)
遼寧廣播電視大學(xué)( 沈陽 110034 )
隨著數(shù)據(jù)庫系統(tǒng)應(yīng)用的迅速發(fā)展,數(shù)據(jù)庫的教學(xué)也隨之受到了廣泛的重視,但目前的數(shù)據(jù)庫教學(xué)系統(tǒng)卻越來越不適應(yīng)當代數(shù)據(jù)庫教學(xué)的發(fā)展, 教學(xué)功能不齊全,現(xiàn)有功能不規(guī)范,使用不廣泛, 使用對象比較單一。以前的系統(tǒng)只是用于教師組卷、上成績等,很少有學(xué)生在線學(xué)習(xí),不普遍,也不是很方便,學(xué)生有這樣的需求,但系統(tǒng)不提供, 教師的試題不能及時傳達給學(xué)生,而學(xué)生的錯誤信息也不能及時的反饋給老師,這給教學(xué)效果帶來了很大的影響,不能引發(fā)學(xué)生自主學(xué)習(xí)的興趣,只是運用傳統(tǒng)的教學(xué)方法,學(xué)生和教師的積極性都不夠。學(xué)習(xí)效果不明顯。
數(shù)據(jù)庫教學(xué)系統(tǒng)就是為了充分利用現(xiàn)有計算機資源,實現(xiàn)教學(xué)、考試分離以及考試工作的全自動化管理,有效利用校園網(wǎng)的軟硬件資源,使其發(fā)揮最大效力,更好的為數(shù)據(jù)庫教學(xué)、科研、管理服務(wù),同時可以進行大規(guī)模的學(xué)生自發(fā)考試,實現(xiàn)考試的客觀性、自動性;自動化組卷可以減輕教師的工作強度。而傳統(tǒng)考試則是一個漫長而復(fù)雜的過程,已經(jīng)越來越不適應(yīng)現(xiàn)代教學(xué)的需要。數(shù)據(jù)庫教學(xué)系統(tǒng)是傳統(tǒng)考試的延伸,它可以利用網(wǎng)絡(luò)的無限廣闊空間,隨時隨地的對自己進行測試,并且可根據(jù)自己的多次成績對自己近期的學(xué)習(xí)作出相應(yīng)的學(xué)習(xí)效果評價。為教學(xué)工作者提供方便、提高數(shù)據(jù)庫教學(xué)工作的效率、準確性和便利性,進而提高整個教學(xué)工作的辦公自動化水平。
Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。 Hibernate可以應(yīng)用在任何使用JDBC的場合,既可以在Java的客戶端程序?qū)嵱茫部梢栽赟ervlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以完成數(shù)據(jù)持久化的重任。簡而言之,就是把數(shù)據(jù)庫中的字符串封裝成JAVA類中的一個變量,這就是持久化。
Spring 是一個開源框架,是為了解決企業(yè)應(yīng)用程序開發(fā)復(fù)雜性而創(chuàng)建的??蚣艿闹饕獌?yōu)勢之一就是其分層架構(gòu),分層架構(gòu)允許您選擇使用哪一個組件,同時為 J2EE 應(yīng)用程序開發(fā)提供集成的框架。
Spring框架是一個分層架構(gòu),由 7 個定義良好的模塊組成。Spring模塊構(gòu)建在核心容器之上,核心容器定義了創(chuàng)建、配置和管理bean的方式。
其中系統(tǒng)主要用到了Core模塊,功能如下。
MVC框架是一個全功能的構(gòu)建Web應(yīng)用程序的MVC實現(xiàn)。通過策略接口,MVC框架變成為高度可配置的,MVC容納了大量視圖技術(shù),其中包括 JSP、Velocity、Tiles、iText和POI。在我的系統(tǒng)中主要是JSP。
Core又叫核心容器,它提供Spring框架的基本功能。它的主要組件是BeanFactory,它是工廠模式的實現(xiàn)。BeanFactory使用控制反轉(zhuǎn)(IOC)模式將應(yīng)用程序的配置和依賴性規(guī)范與實際的應(yīng)用程序代碼分開,以此來減少代碼和代碼之間的偶合行。
Struts 2的體系與Struts 1體系的差別非常大,因為Struts 2使用了WebWork的設(shè)計核心,而不是使用Struts 1的設(shè)計核心。Struts 2大量使用攔截器來處理用戶請求,從而允許用戶的業(yè)務(wù)邏輯控制器與Servlet API分離。它是一種來源于WebWork 2,可擴展的,用來建立企業(yè)級Java Web應(yīng)用程序的框架,不但注重程序的開發(fā)過程,更注重部署和后期維護。而且使用非常容易,最大可能的保留了和Strut 1.x的相似行。
(1)JSP(Java Server Pages)是一種開發(fā)Web程序的技術(shù),是基于Java Servlet及整個Java體系的Web開發(fā)技術(shù),秉承了Java語言的優(yōu)勢,實現(xiàn)了真正的與平臺無關(guān)性。它是一種在HTML中嵌入Java語言的技術(shù),不過JSP文件使用jsp后綴,是編寫Servlet的一種不同方式,JSP源文件由安裝在Web服務(wù)器上的JSP擎編譯成一個Servlet類字節(jié)代碼文件,交由Servlet引擎處理。JSP原則上能實現(xiàn)Servlet所有功能,具有它的優(yōu)點。JSP技術(shù)為創(chuàng)建動態(tài)的Web頁面提供一種簡化、快速的方式,JSP規(guī)范定義了服務(wù)器和JSP頁面之間的交互,并且描述頁面的格式和語法。
(2)JSP與ASP的簡單比較:JSP與Microsoft的ASP技術(shù)非常相似。兩者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。在ASP或JSP環(huán)境下,HTML代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴于Web服務(wù)器,而ASP和JSP頁面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送給瀏覽器。ASP和JSP都是面向Web服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。
傳統(tǒng)的web應(yīng)用允許用戶填寫表單(form),當提交表單時就向web服務(wù)器發(fā)送一個請求。服務(wù)器接收并處理傳來的表單,然后返回一個新的網(wǎng)頁。這個做法浪費了許多帶寬,因為在前后兩個頁面中的大部分HTML代碼往往是相同的。由于每次應(yīng)用的交互都需要向服務(wù)器發(fā)送請求,應(yīng)用的響應(yīng)時間就依賴于服務(wù)器的響應(yīng)時間。這導(dǎo)致了用戶界面的響應(yīng)比本地應(yīng)用慢得多。 與此不同,AJAX應(yīng)用可以僅向服務(wù)器發(fā)送并取回必需的數(shù)據(jù),它使用SOAP或其它一些基于XML的web service接口,并在客戶端采用JavaScript處理來自服務(wù)器的響應(yīng)。因為在服務(wù)器和瀏覽器之間交換的數(shù)據(jù)大量減少,結(jié)果我們就能看到響應(yīng)更快的應(yīng)用。同時很多的處理工作可以在發(fā)出請求的客戶端機器上完成,所以Web服務(wù)器的處理時間也減少了。
Ajax應(yīng)用程序的優(yōu)勢在于:(1)通過異步模式,提升了用戶體驗。(1)優(yōu)化了瀏覽器和服務(wù)器之間的傳輸,減少不必要的數(shù)據(jù)往返,減少了帶寬占用。(3)Ajax引擎在客戶端運行,承擔了一部分本來由服務(wù)器承擔的工作,從而減少了大用戶量下的服務(wù)器負載。
在傳統(tǒng)的Web開發(fā)模式中,JavaScript是一種點綴的作用,完成很有限的功能,諸如表單驗證之類。其語言本身也一直被當作過程化的語言使用,很難完成復(fù)雜的功能。而Ajax的出現(xiàn)使得復(fù)雜腳本成為必需的組成部分,Ajax是web2.0的一種框架,這就對JavaScript程序設(shè)計提出了新的要求,很多Ajax應(yīng)用開始利用JavaScript 面向?qū)ο蟮男再|(zhì)進行開發(fā)。事實上,Ajax提供了完善的機制來實現(xiàn)面向?qū)ο蟮拈_發(fā)思想。在我的系統(tǒng)中我用到了這樣兩個框架分別是dwr,jque,用來實現(xiàn)答題后自動跳出答案功能。
MySQL是一個真正的多用戶、多線程SQL數(shù)據(jù)可服務(wù)器。SQL是世界上最流行的和標準化的數(shù)據(jù)庫語言。MySQL是以一個客戶機/服務(wù)器結(jié)構(gòu)實現(xiàn)的,是有一個服務(wù)器守護程序mysqld和很多不同的客戶程序和庫組成的。
SQL是一種標準化語言,它使得存儲、更新和存取信息更容易。如果您想用SQL語言為一個網(wǎng)站檢索產(chǎn)品信息及存儲顧客信息,那么,MySQL能夠以足夠快的速度和靈活來允許您存儲紀錄文件和圖像。 盡管MySQL還在不斷的開發(fā)中,但它已經(jīng)提供了一個豐富的和極其有用的功能集。
該系統(tǒng)不但能實現(xiàn)學(xué)生自測,教師組卷,而且能實現(xiàn)學(xué)生自我學(xué)習(xí)效果評價的功能,其意義深遠。
[1]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論. 高等教育出版社,2006.
[2]王冠.SQL查詢語言及應(yīng)用.科學(xué)出版社,2002.
[3]李國,馬玉書.Web數(shù)據(jù)庫技術(shù)與應(yīng)用.科學(xué)技術(shù)出版社,2006.
[4]馮玉才.數(shù)據(jù)庫基礎(chǔ)(第二版).華中理工大學(xué)出版社,2006.