張學森
(安徽理工大學,安徽 淮南 232001)
基于J2EE的輕型E-Learning系統設計與實現
張學森
(安徽理工大學,安徽淮南232001)
摘要:在線學習已成為大型企業在員工培訓工作上的重要選擇,然而,受技術和資金的限制,中小企業的電子學習系統還處于起步階段,因此,開發適合中小企業需求的輕型電子學習系統具有十分重要的意義,本文介紹了一種基于J2EE的輕型E-Learning系統的設計方案及實現技術,該系統對于提升中小企業員工的素質具有一定的促進作用.
關鍵詞:中小企業;J2EE;E-Learning
隨著國內產業結構的轉型升級,越來越多的企業認識到員工能力對企業發展的推動作為,高素質的員工日益成為企業成功的決定性因素之一.國內的大中型企業也日益重視全面提升員工的工作能力,企業在員工培訓上的投入越來越大.
近年來,伴隨著Internet在中國的迅猛發展,E-learning的概念在國內興起.相對于脫產學習模式,在線學習受地域、時間等因素限制較小,可以節約大量的精力、經費投入.這些優勢已為國內眾多企業所接受,許多大型企業已開始建設自己的分布式在線培訓系統,然而,中小企業電子學習系統尚未得到普及.因此,開發的輕型的E-learning在線教學系統對于中小企業的員工培訓具有重要的意義,本文對某小型企業進行了需要分析,采用基于J2EE的B/S模式設計開發輕型的E-learning系統,為中小企業的可持續發展提供重要的動力.
1.1 J2EE模式
J2EE是Sun公司(現已被Oracle公司并購)推出的一種多層結構的分布式應用程序模型,它包含許多組件,可簡化且規范應用系統的開發與部署,能夠用于構建從簡單的網絡門戶到復雜的分布式企業級事務應用等的任何應用系統[1].
1.2 MVC模式
MVC模式(模型—視圖—控制器)是J2EE開發中最常使用的一種設計模式,它將數據展業、數據處理、數據存儲等功能進行區分,以降低各子系統間的耦合.
1.3 EJB模型
EJB(Enterprise JavaBean)是J2EE服務器端組件模型,設計目標與核心應用是部署分布式應用程序.它定義了一個用于開發基于組件的企業多重應用程序的標準.其特點包括網絡服務支持和核心開發工具(SDK).EJB的三種Bean—SessionBean、Entity Bean和MessageDriven Bean分別用于實現不同的功能[2].SessionBean用于實現業務邏輯,Entity Bean是域模型對象,用于實現O/R映射,負責將數據庫中的表記錄映射為內存中的Entity對象,MessageDriven Bean基于JMS消息,只能接收客戶端發送的JMS消息然后處理.
1.4 JDBC數據庫連接池技術
JDBC是Java程序連接數據庫的一組API.在數據庫處理中,建立/關閉數據庫連接需要占用大量系統資源.若對每一個訪問時均重新建立連接.勢必會使系統資源消耗過大,影響用戶體驗.為了解決這一問題,JDBC 2.0后引入連接池技術,其原理是系統在內存中維持一個連接緩沖池,建立好一組數據庫連接,程序中的連接斷開都是邏輯斷開.而實際的物理連接被存儲在緩沖池中并被加以復用.當下一個用戶訪問時直接從連接緩沖池中取得一個數據庫連接,而不必重新連接數據庫.使用連接池可以大大地提高響應速度,從而提高整個系統的性能.
2.1需求分析
前期我們與需求單位(某中型牛奶生產企業)相關人員進行了充分溝通,主要了解他們對此系統的定位與功能預期:
2.1.1系統定位.我們了解到,需求單位計劃將此系統用于單位內部員工的日常培訓,使用人員大概800人,預計最大并發訪問人數約占300人,屬中小型系統,因此計劃使用j2ee成熟技術開發一套輕量級在線教學系統.
2.1.2功能需求.基于J2ee技術的實驗教學信息化管理通用平臺建設的設計與實現[1].系統需要提供給三類用戶使用——系統管理員、講師和學員.管理員負責系統的日常管理、講師、學員賬戶管理等.教師負責將其負責課程的視頻、課件等資料上傳至系統,在線布置作業、回復學員問題等.學員則有權限遠程在線學習相應的課程,并能使用留言板向老師請教問題.
此外,系統需要提供學員的在線學習進度統計功能,以方便教師、學員及時了解學習進度.
2.2功能設計
根據用戶單位的需求,本系統各主要功能模塊設計如圖1所示.

圖1系統功能模塊圖
系統控制模塊中,計劃實現系統Logo、網頁標題的個性化設置;實現web服務器和數據庫停止、啟用功能;實現數據庫的備份功能.
用戶管理模塊中,要實現教師賬戶、學員賬戶的批量創建、刪除、重置功能;不同的管理模塊,可以下發權限給指定用戶,如教師可以管理學員.
教學模塊是教師使用到的主要功能,課件管理模塊中,應實現文檔課件、視頻課件的上傳、刪除功能,以及設置課件與課程的對應關系;課業管理模塊中,教師要設置教學計劃,設置學習目標;學員管理模塊提供給教師管理參加其課程學習的學員信息;課業統計功能提從報表功能給教師,使其能了解全體或部分學生的學習進度;師生交流模塊中,教師可以回答學生的問題,也可主動向學生提問.
在線學習模塊是學員使用的主要功能,首先網頁中要實現視頻在線播放和文檔顯示功能,并且能記錄每個學員的在線學習時長,用來判斷學員是否參加指定課程的學習;師生交流模塊中學習可以通過留言請教或回答問題;在學員的課業管理模塊中,學員可以了解到自己應該參加的課程以及目前的已學習過的課程等信息.
2.3開發工具
為實現上述功能,我方決定選用j2ee技術,其中主要涉及jsp和servlet技術,使用tomcat服務器、Mysql數據庫進行系統開發,開發工具為netbeans.
2.4系統結構
系統開發基于MVC模式,視圖層主要由jsp頁面及部分servlet組成,用于與用戶交互;控制器層的servlet設計用來將用戶請求傳遞給業務模型,并返回符合要求的視圖給用戶;系統的核心業務由bean實現,用于數據處理、數據庫存取等,其體系結構如圖2所示.

圖2系統體系結構
2.5關鍵功能實現
Jsp頁面中的視頻播放:為方便課程視頻播放,要求上傳的視頻統一為flv格式.頁面中通過使用swfobject插件來進行視頻播放.
Jsp頁面中在線文檔閱覽:對于文檔格式的課件,統一要求轉換成pdf格式上傳至系統.系統使用開源的swftools將pdf轉換成swf格式,并存放至指定位置,頁面使用flexpaper來瀏覽文檔.
本系統暫時實現了在線教學功能,尚未實現對學習結果的評估,今后將繼續開發在線考試模塊來達到檢驗學員學習成果的目的.為方便教師與學員之間的溝通,還可根據用戶需要開發在線視頻通信功能,使教師、學員之間能進行更加直觀的交流,使系統成為教師與學員之間教學、溝通的橋梁,達到全面提升教學水平的目標.
——
參考文獻:
〔1〕汪濤.實驗教學信息化管理通用平臺建設的研究及應用[J].湖北民族學院學報(自然科學版),2013(03).
〔2〕(美)Rod Johnson.J2EE設計開發編程指南[M].北京:電子工業出版社,2003.
〔3〕王欣.J2EE/EJB在產品數據共享中的應用研究[J].微計算機信息,2005(33).
基金項目:本文系2013年度淮南市科技計劃項目“基于J2EE的企業E-Learning系統的研究”(2013A4018)的研究成果
中圖分類號:TP315
文獻標識碼:A
文章編號:1673-260X(2015)07-0013-02