李芝興 文海家
摘要:本文將分析利用JavaEE技術實現基于Web的精品課程網站發布及評審平臺的設計思想、系統組成以及闡述本系統所用到的技術,這些技術包括了Tomcat Web服務器、Serv-u文件服務器、Mysql數據庫服務器、Hibernate、Struts、Spring、ODBC、JDBC、Proxool、JavaBean、Jsp、Servlet等開源技術,并進一步分析系統的搭建和技術組成。
關鍵詞:精品課程評審網站;文件服務器;Web服務器;三層框架;批量上傳下載;JavaEE
中圖分類號:G642 文獻標識碼:B
隨著我國高等教學改革的開展和深入,國家教委、市教委和校教務處對課程,尤其是精品課程建設加大了投入力度。以評促建、以評促改已蔚然成風,教學資源和教學質量也得到了明顯的改善。我校也非常重視精品課程的建設,在引入上海復秦公司的精品課課程評審及搭建技術后,我校的精品課程得到了大力的發展。但隨著教學教改要求的不斷提高,舊的網站技術已經不能滿足新的需求,主要體現在以下幾個方面:
(1) 集中存放及發布網站原始數據的辦法已經導致服務器存儲空間過大,存儲空間趨于飽和。
(2) 網站更新采用整體更新方式,不能更新單個網頁,導致了網站幾乎無法更新。不便于管理和維護。
(3) 服務器負載過大,訪問速度慢,失去了精品課程教學資源共享的初衷。
在這種情況下,我們提出了基于JavaEE等技術的分布式的精品課程發布及評審系統(以下簡稱精品課程管理系統)的總體設計思想、系統組成和技術實現,并進一步分析該系統的優缺點和使用價值,對實際的系統作一定的評價。
1精品課程管理系統的業務流程
在精品課程建設及評審過程中,首先由教務處發布精品課程建設及評審比賽的通知,然后由各學院組織和篩選合格的相關課程參與比賽,相關的課程負責人在網站上提出申請,并由教務處負責審核并批準,同時給各課程開辟網站存儲空間、域名、空間的管理賬號和密碼。
在各相關課程完成網站內容建設后,可以采用系統提供的批量上傳下載技術上傳網站內容。網站內容分為兩部分。第一部分是課程申報資料評審網站,該網站是必須的、格式是固定的,內容可以參考國家級精品課程的要求。可以采用在線編輯的方式實現,也可以采用離線網頁編輯的方式在模版的引導下完成。同時包括課程內容網站的URL。這個URL可以是本服務器上的資源,也可以是其他服務器上網站。第二部分是課程內容網站,這部分內容可以存放在其他服務器(鼓勵這樣做),也可以發布在本系統中。如果要發布在本系統,可以直接采用本系統提供的批量上傳下載技術上傳。每個網頁可以單獨修改和更新。
評審人員由教務處邀請并登錄評審系統,對各課程的各項指標進行評審,給出相應的分數,提出整改意見。然后由教務處組織組織現場答辯,并將答辯的意見和分數公布在網站上。最后由系統給出綜合排名,并上報有關上級部門批準和備案。同時啟動相關批準課程的教學資源的共享和訪問接口的公布。
2系統主要功能
針對上面的業務流程,按軟件工程的流程將系統分為如下五個模塊:一是通知發布模塊、二是課程空間賬號管理模塊、三是網站發布維護模塊、四是評委評審模塊、五是外部訪問接口模塊。如圖1。下面敘述各個模塊具體功能。
通知發布模塊由系統管理員管理,發布系統的相關通知,如參賽評審的要求、系統的注意事項、使用說明,等等。該部分涉及在線編輯技術、Web服務器技術和數據庫服務器技術。
課程空間賬號管理模塊由課程負責人使用。課程負責人申請賬號、由系統管理員審批并由系統分配空間和賬號、密碼。這部分內容涉及文件服務器技術、Web服務器技術和數據庫服務器技術。
網站發布維護模塊也由課程負責人使用,采用系統提供的批量上傳下載技術上傳課程申報資料評審網站和課程內容網站(或其URL)。同時由課程負責人維護自己上傳的網站。這部分內容涉及文件服務器技術、Web服務器技術、數據庫服務器技術以及批量上傳下載技術。

評委評審模塊由教務處邀請的評審專家使用,對各課程的資料和課程教學內容進行分項評分。最后由系統給出綜合排名。這部分內容涉及Web服務器技術和數據庫服務器技術。
外部訪問接口模塊是對外公布可以訪問的資源,起到資源共享的接口作用,涉及數據庫技術和Web技術。
3系統的主要實現技術
精品課程管理系統按動態網站來設計,分為三層結構:表示層、業務層和持久層,如圖2。以靜態網頁技術(Html、Applet)為表現形式,同時采用JavaEE技術(如Jsp、Servlet)實現網頁中的動態的內容。這是三層中的表示層。

課程狀態、課程負責人、課程分數、評委、網站域名以及通知等數據按關系數據庫表的方式存放于數據庫Mysql中。這是底層數據。
持久層使用Hibernate。采用Hibernate框架可以很容易將關系數據映射成JavaBean實體,便于Jsp或Servlet操作數據庫。同時將Proxool數據庫連接池和Hibernate框架繼承,提高了訪問數據庫的效率。
業務層將處理應用程序的業務邏輯和業務校驗、管理事務、管理業務層級別的對象的依賴。在顯示層和持久層之間增加了一個靈活的機制,使得他們不直接聯系,通過分析從顯示層到業務層之間的上下文環境來得到業務層的服務,并且管理程序的執行。在這一層我們使用Spring框架。
對于課程空間賬號管理,本系統采用文件服務器和Web服務器協調工作的方式來完成,即采用Serv-U+ Tomcat+Jsp技術。為了實現網站文檔批量上傳技術,我們采用了文件服務器和完全授權的Applet技術,該技術即可以實現批量上傳下載,也可以實現單個網頁的上傳下載,即采用Serv-u+Applet+Jsp技術。如圖3。

Serv-U是現今Windows下最流行、功能最強大、使用最簡單的FTP服務器軟件之一,同時也是目前國內應用最多的FTP服務器軟件。Serv-U除了擁有其他同類軟件所具備的幾乎全部功能外,還支持斷點續傳、支持帶寬限制、支持遠程管理、支持虛擬主機等。為了實現批量上傳技術,我們對Serv-u6.2的配置文件ServUDaemon.ini進行ODBC配置,內容如下:
[GLOBAL]
Version=6.2.0.0
ProcessID=2660
[Domain2]
CacheTTL=60
ODBCSource=ftp|root|562F4C40
BCTables=useraccounts|groupaccounts|userdiraccess|groupdiraccess|useripaccess|groupipaccessODBCColumns=Name|Password|SKeyValues|HomeDir|LogMesFile|Access|Disable|NeedSecure|RelPaths|HideHidden|AlwaysLogin|ChangePass|QuotaEnable|MaxIP|MaxSpeedUp|MaxSpeedDown|MaxUsers|IdleTimeOut|SessionTimeOut|RatioUp|RatioDown|RatioCredit|QuotaCurrent|QuotaMax|Expiration|Privilege|PassType|RatioType|Groups|Notes|Index||
AutoHomedir=0
EncryptPasswords=0
[DOMAINS]
Domain1=0.0.0.0||21|teacher.domain|2|0|1
有了Serv-u到MySQL數據庫的映射,只要在Mysql數據庫中添加Serv-u用戶的名稱、密碼、權限等信息就可以實現服務器操作系統資源管理器到文件服務器的自動管理。
對于文件服務器的訪問,可以采用多種方式,如采用迅雷等工具點擊下載所有連接或采用Applet組件。本系統采用Applet技術和FTP協議。
如果在上傳或是下載的過程中,沒有任何的提示,用戶根本沒法判斷任務是否完成或是任務是否死了,常常由于上傳時間或下載時間過長而誤導用戶。因此,進度條就顯得非常的重要與實用。進度條的實現如下:在程序中開啟兩個線程,第一個線程用于動態的改變界面上進度條的value值,而第二個線程則在上傳或是下載的過程中,做成一個循環,在此循環中,每次讀取一定數量如8192字節數的數據。然后傳完此數據后,調用第一個線程中的updateProgress方法,來更新界面進度條的value值。如圖4。

4本精品課程管理系統優點
本平臺從開始設計開發至今已有一年的歷史,該系統已經成功模擬了網站制作大賽的比賽平臺系統,包括了網
站的發布和評審。這一年以來該平臺一直處于不斷的完善和改進之中,目前軟件功能較齊全、運行穩定。
本精品課程管理系統的建成,大大地提高了網站管理質量和教學質量,它的優點體現如下:
(1) 將傳統的網站管理方式從原始的管理方式提升到現代化的網絡化管理方式,是教學方法的改革。管理效率將大大提高。
(2) 采用批量上傳下載技術,方便修改更新單個網頁和資源。
(3) 分布式存放教學內容網站,有效解決存儲空間飽和的瓶頸問題。
(4) 分布式存放教學內容網站,訪問速度和資源共享的效率得到了大大的提高,使精品課程真正起到應有的作用。
5結束語
隨著Internet應用的日益廣泛,基于Internet的輔助教學軟件將會是一種重要形式?;贗nternet的教學軟件的開發及應用應充分遵循教學規律,充分利用先進的計算機網絡技術和手段,開發出生動性、交互性強的高質量網絡應用軟件,提高了管理效率和精品課程教學資源使用效率。
參考文獻:
[1] 袁守華. 基于Web的課程網絡教學網站的開發與應用[J]. 中原工學院學報,2004(1):49-53.
[2] 劉義,蘭鳳俠. 淺談網絡教學系統的設計與應用[J]. 農業網絡信息,2005(6):28-29.
[3] 李芝興,李慶生. 基于Java EE技術的實驗教學平臺的開發與建設[J]. 計算機教育,2008(2):110-112.
[4] 丁振國,任新潔. 基于Struts的Web應用開發研究[J]. 微機發展,2004,14(1):90-92.
[5] 陳智勇,左仁祥. 基于Web的網絡教學平臺的設計[J]. 計算機與現代化,2004(1):53-55.