淺析個性化網(wǎng)絡教學系統(tǒng)設計與實現(xiàn)
時間:
楊亦1由 分享
論文關鍵詞:SSH;AJAX;B/S模式;網(wǎng)絡教學
論文摘要:Internet技術的迅速發(fā)展以及學校信息化程度的不斷提高,使得網(wǎng)絡教育資源日益豐富;基于Internet的教學方式已經(jīng)深入人心,推動了我國教育改革的進程,改變了人們的學習觀念。個性化網(wǎng)絡教學系統(tǒng)充分利用網(wǎng)絡資源,強調(diào)學生自主個性學習,并采用AJAX、Struts、Spring、Hibernate等框架技術,使得項目開發(fā)過程簡捷、結構清晰,并且系統(tǒng)具備很好的可擴展性和可維護性,提高了軟件系統(tǒng)項目的可重用性。
一、網(wǎng)絡教學的現(xiàn)狀
隨著Internet技術的日益普及, 計算機網(wǎng)絡教學已成為現(xiàn)代教育技術發(fā)展的熱點。在網(wǎng)絡教學環(huán)境下, 可以最大限度地發(fā)揮學習者的主動性、積極性, 實現(xiàn)傳統(tǒng)教育無法做到的“個性化教育”。但在目前的網(wǎng)絡教學中, 以教師為主體的教學模式實質上并沒有改變。對網(wǎng)絡教學的理解也只是停留在教學手段和教學形式的改變上,同時系統(tǒng)開發(fā)一般采用Web技術,不能適應網(wǎng)絡發(fā)展與內(nèi)容更新帶來的變化。為此我們采用ASSH框架技術研究并設計擴展性良好的網(wǎng)絡教學系統(tǒng),讓學生根據(jù)自我水平進行個性化的學習,調(diào)用各種學習資源,自我設計學習進度直至達到學習目的。
二、系統(tǒng)框架技術
在程序開發(fā)時,我們選擇已有的優(yōu)秀架構可以集中精力處理業(yè)務邏輯。在開發(fā)網(wǎng)絡教學系統(tǒng)時,我們選擇了當前流行的J2EE Web 應用框架。它整合了AJAX、Struts、Spring、Hibernate4四個架構(簡稱ASSH 框架)。
AJAX全稱為“Asynchronous JavaScript and XML”,在瀏覽器與 Web 服務器之間使用異步數(shù)據(jù)傳輸,這樣就可使網(wǎng)頁從服務器請求少量的信息,而不是整個頁面。AJAX 可使因特網(wǎng)應用程序更小、更快、更友好。[1]
Struts中模型是一個Action類,開發(fā)者通過其實現(xiàn)商業(yè)邏輯。視圖是由與Servlet配合工作的一整套JSP定制標簽構成,利用它們可以快速建立應用系統(tǒng)的界面??刂破鰽ctionServlet是模型與視圖的聯(lián)系紐帶。[2]
Spring提供了輕量級管理業(yè)務組件的IoC容器。Spring通過依賴注入機制,可以在運行期間為組件配置所需要的資源,而無需在編寫組件代碼時指定,從而在相當程度上降低了組件之間的耦合,實現(xiàn)組件的即插即用。[3]
Hibernate實現(xiàn)對關系數(shù)據(jù)庫的對象化。Hibernate不僅能夠管理JavaBean(或者稱之為POJO)到RDBMS 表的映射,還能夠供應用查詢和獲取數(shù)據(jù)庫中的數(shù)據(jù)。Hibernate事實上是標準的O/R 映射技術。[4]
三、系統(tǒng)分析與設計
系統(tǒng)基本形式為一個交互式動態(tài)網(wǎng)站。用戶必須登錄后才能訪問系統(tǒng),并且不同身份登錄后,所擁有的權限是不同的。用戶身份有:教師、管理員和已注冊過的學生等。每個身份可以注冊多個用戶,用戶可以操作自己權限內(nèi)的模塊。整個系統(tǒng)劃分為網(wǎng)絡教學模塊、智能推薦模塊、網(wǎng)上交流模塊、答疑模塊、網(wǎng)絡測評模塊、后臺管理模塊等。
1.網(wǎng)絡教學模塊
該模塊主要有“課程選擇”、“課件閱覽”、“視頻點播”等部分, 提供相關課程的在線教學內(nèi)容, 如HTML 網(wǎng)頁、PPT電子教案、DOC 教學文檔、RM、ASF教學錄像等,這部分是網(wǎng)絡教學系統(tǒng)的主要部分,學生可以根據(jù)自己的需要進行選擇性學習。
2.智能推薦模塊
學習內(nèi)容的選擇上,系統(tǒng)根據(jù)學習歷史記錄和能力估計,選擇學生沒有掌握或是沒有學習過的教學內(nèi)容,這些學習內(nèi)容是與當前學生能力最接近的。在學習內(nèi)容的組織上,系統(tǒng)將根據(jù)對學生估測的能力和學生的認知風格,選擇最適合學習者的內(nèi)容呈現(xiàn)方式。
3.網(wǎng)上交流模塊
該模塊主要是通過“網(wǎng)絡論壇”來實現(xiàn),給老師和學生提供一個在線交流的平臺。學生可以通過網(wǎng)絡論壇充分發(fā)揮自主權和發(fā)言權,對課程的某些主題可以在網(wǎng)上展開討論,發(fā)表各自見解,探討學習心得、交流學習經(jīng)驗等。對疑難問題將設立專門的網(wǎng)頁,分專題進行深入、系統(tǒng)、理性的探討,為學生提供一個更為廣闊的學習的平臺。同時該模塊接受來自各方面對教學的反饋信息,如教學問卷、學習要求及期望等。
4.答疑模塊
該模塊分為自動答疑和人工答疑兩種方式。系統(tǒng)自動答疑是指當學生遇到疑難問題時,通過網(wǎng)絡遠程提交問題的描述,系統(tǒng)將根據(jù)學生提交的問題描述,對問題庫和領域知識庫進行智能搜索,將對該問題的解答呈現(xiàn)給學生。當沒有檢索到對該問題的解答時,自動將問題發(fā)送到學科教師的留言信箱中,當教師對該問題進行回答后,系統(tǒng)通過發(fā)送留言通知該學生。之后,系統(tǒng)將對該問題的解答歸納到領域知識庫中,以便其他學生遇到類似問題時,能給予自動應答。人工答疑則是學生將問題直接針對某個老師發(fā)送,老師一旦上線給出解答后即反饋給學生。
5.網(wǎng)絡測評模塊
該模塊支持網(wǎng)上自測和正式考試兩種類型。學生可以登錄后進行網(wǎng)絡自測,選擇課程及內(nèi)容進行測試, 可以自己設定章節(jié)、題型和難度系數(shù)等因素, 然后由系統(tǒng)隨機生成測驗卷, 自測完成后, 自動閱卷并給出正確答案; 教師以合法身份登錄后可以對試題庫中試題進行添加、刪除、修改,同時通過人工或智能組卷方式, 生成試卷對學生進行在線考試。系統(tǒng)可以自動生成并發(fā)布考試試卷, 并且能夠對考試結果進行批改、統(tǒng)計和分析。
6.后臺管理模塊
該模塊是網(wǎng)絡教學系統(tǒng)中不可缺少的重要組成部分,主要包括:人員管理、課程管理、試題管理、論壇管理、成績管理等。
四、系統(tǒng)關鍵技術的實現(xiàn)
1.頁面設計
主要采用JSP和部分Servlet定制的標簽來表現(xiàn)。為了加強用戶體驗與交互能力,在網(wǎng)頁設計大量采用AJAX技術來實現(xiàn),如自動完成、在線提示等功能。
2.課程信息錄入流程實現(xiàn)
本系統(tǒng)采用ASSH框架進行開發(fā)實現(xiàn),下面以課程信息錄入為例闡述系統(tǒng)的實現(xiàn)。在響應新增課程數(shù)據(jù)頁面請求時,通過導入課程管理模塊的配置文件struts-course-config.xml來完成業(yè)務流程的部署。當點擊course_add.jsp上的保存按鈕時,將輸入數(shù)據(jù)用set方法存入到courseForm中,然后根據(jù)struts-course-config.xml調(diào)用courseSave.do進行業(yè)務處理。在courseSave.do 中頁面數(shù)據(jù)將從courseForm中讀取。courseSave.do執(zhí)行成功后將顯示頁面(course_save_success.jsp)。courseSave.do對應的CourseSaveAction在導入課程管理模塊的Spring配置文件中指定,也要定義名字為”/coursesave”的受管Bean。同時,CourseSaveAction 使用到CourseService。要使用CourseService,需要在CourseSaveAction 中生成csService 的get、set方法,并且courseContext.xml中對“/courseSave”進行CourseService 的依賴注入。
Spring和Hibernate 從dbContext.xml 中讀取和數(shù)據(jù)庫有關的信息。數(shù)據(jù)庫信息包括數(shù)據(jù)庫連接、與數(shù)據(jù)庫結構相對應的映射文件,把它封裝在dataSource中。然后將dataSource注入到sessionFactory中,sessionFactory同時還對課程信息表CourseInfo,所對應的映射文件CourseInfo.hbm.xml以及Hibernate相關操作然后將sessionFactory注入到數(shù)據(jù)訪問類CourseInfoDAO中。CourseInfoDAO中是對CourseInfo 表進行保存\查詢\刪除等基本數(shù)據(jù)操作,在CourseContext.xml中需要CourseService進行CourseInfoDAO及其代理的依賴注入。這樣做,使得當CourseInfoDAO變化時,只需修改CourseContext.xml 給CourseService 實現(xiàn)新的注入就可以了,由此解除了數(shù)據(jù)訪問層和業(yè)務層的緊密耦合。
3.事務控制
為了對系統(tǒng)中的事務進行統(tǒng)一管理和控制,采用了Spring的聲明式事務管理機制。聲明式事務最大的優(yōu)點就是不需要通過編程的方式管理事務,只需在配置文件中做相關的事務規(guī)則聲明(或通過等價的基于標注的方式),便可以將事務規(guī)則應用到業(yè)務邏輯中。因為事務管理本身就是一個典型的橫切邏輯,這正是 AOP 的用武之地。
五、結束語
成功的網(wǎng)絡教學平臺可以為學習者提供圖文音像并茂、豐富多彩的人機交互界面, 讓學習者樂于學習,能為學習者提供一個自我發(fā)現(xiàn)、自主選擇的智能型個性化學習環(huán)境,同時創(chuàng)設一個多人在線、互相幫助、協(xié)作式學習環(huán)境。本文采用框架技術設計的個性化網(wǎng)絡教學系統(tǒng)旨在構建一個性能優(yōu)良、適合網(wǎng)絡發(fā)展的智能型教學平臺。
參考文獻:
[1]百度百科.http://baike.baidu.com/view/1641.htm.[EB/OL].
[2]孫衛(wèi)琴.精通Struts:基于MVC 的JavaWeb 設計與開發(fā)[M].北京:電子工業(yè)出版社,2005:383-403.
[3]羅時飛.精通Spring [M].北京:電子工業(yè)出版社, 2005:29-48,191-224,303-309.
[4]孫衛(wèi)琴.精通Hibernate:Java 對象持久化技術詳解[M].北京:電子工業(yè)出版社,2005:1-42.
[5]郭鋒等.Spring 從入門到精通[M].北京:清華大學出版社.2006(8):10-250.
論文摘要:Internet技術的迅速發(fā)展以及學校信息化程度的不斷提高,使得網(wǎng)絡教育資源日益豐富;基于Internet的教學方式已經(jīng)深入人心,推動了我國教育改革的進程,改變了人們的學習觀念。個性化網(wǎng)絡教學系統(tǒng)充分利用網(wǎng)絡資源,強調(diào)學生自主個性學習,并采用AJAX、Struts、Spring、Hibernate等框架技術,使得項目開發(fā)過程簡捷、結構清晰,并且系統(tǒng)具備很好的可擴展性和可維護性,提高了軟件系統(tǒng)項目的可重用性。
一、網(wǎng)絡教學的現(xiàn)狀
隨著Internet技術的日益普及, 計算機網(wǎng)絡教學已成為現(xiàn)代教育技術發(fā)展的熱點。在網(wǎng)絡教學環(huán)境下, 可以最大限度地發(fā)揮學習者的主動性、積極性, 實現(xiàn)傳統(tǒng)教育無法做到的“個性化教育”。但在目前的網(wǎng)絡教學中, 以教師為主體的教學模式實質上并沒有改變。對網(wǎng)絡教學的理解也只是停留在教學手段和教學形式的改變上,同時系統(tǒng)開發(fā)一般采用Web技術,不能適應網(wǎng)絡發(fā)展與內(nèi)容更新帶來的變化。為此我們采用ASSH框架技術研究并設計擴展性良好的網(wǎng)絡教學系統(tǒng),讓學生根據(jù)自我水平進行個性化的學習,調(diào)用各種學習資源,自我設計學習進度直至達到學習目的。
二、系統(tǒng)框架技術
在程序開發(fā)時,我們選擇已有的優(yōu)秀架構可以集中精力處理業(yè)務邏輯。在開發(fā)網(wǎng)絡教學系統(tǒng)時,我們選擇了當前流行的J2EE Web 應用框架。它整合了AJAX、Struts、Spring、Hibernate4四個架構(簡稱ASSH 框架)。
AJAX全稱為“Asynchronous JavaScript and XML”,在瀏覽器與 Web 服務器之間使用異步數(shù)據(jù)傳輸,這樣就可使網(wǎng)頁從服務器請求少量的信息,而不是整個頁面。AJAX 可使因特網(wǎng)應用程序更小、更快、更友好。[1]
Struts中模型是一個Action類,開發(fā)者通過其實現(xiàn)商業(yè)邏輯。視圖是由與Servlet配合工作的一整套JSP定制標簽構成,利用它們可以快速建立應用系統(tǒng)的界面??刂破鰽ctionServlet是模型與視圖的聯(lián)系紐帶。[2]
Spring提供了輕量級管理業(yè)務組件的IoC容器。Spring通過依賴注入機制,可以在運行期間為組件配置所需要的資源,而無需在編寫組件代碼時指定,從而在相當程度上降低了組件之間的耦合,實現(xiàn)組件的即插即用。[3]
Hibernate實現(xiàn)對關系數(shù)據(jù)庫的對象化。Hibernate不僅能夠管理JavaBean(或者稱之為POJO)到RDBMS 表的映射,還能夠供應用查詢和獲取數(shù)據(jù)庫中的數(shù)據(jù)。Hibernate事實上是標準的O/R 映射技術。[4]
三、系統(tǒng)分析與設計
系統(tǒng)基本形式為一個交互式動態(tài)網(wǎng)站。用戶必須登錄后才能訪問系統(tǒng),并且不同身份登錄后,所擁有的權限是不同的。用戶身份有:教師、管理員和已注冊過的學生等。每個身份可以注冊多個用戶,用戶可以操作自己權限內(nèi)的模塊。整個系統(tǒng)劃分為網(wǎng)絡教學模塊、智能推薦模塊、網(wǎng)上交流模塊、答疑模塊、網(wǎng)絡測評模塊、后臺管理模塊等。
1.網(wǎng)絡教學模塊
該模塊主要有“課程選擇”、“課件閱覽”、“視頻點播”等部分, 提供相關課程的在線教學內(nèi)容, 如HTML 網(wǎng)頁、PPT電子教案、DOC 教學文檔、RM、ASF教學錄像等,這部分是網(wǎng)絡教學系統(tǒng)的主要部分,學生可以根據(jù)自己的需要進行選擇性學習。
2.智能推薦模塊
學習內(nèi)容的選擇上,系統(tǒng)根據(jù)學習歷史記錄和能力估計,選擇學生沒有掌握或是沒有學習過的教學內(nèi)容,這些學習內(nèi)容是與當前學生能力最接近的。在學習內(nèi)容的組織上,系統(tǒng)將根據(jù)對學生估測的能力和學生的認知風格,選擇最適合學習者的內(nèi)容呈現(xiàn)方式。
3.網(wǎng)上交流模塊
該模塊主要是通過“網(wǎng)絡論壇”來實現(xiàn),給老師和學生提供一個在線交流的平臺。學生可以通過網(wǎng)絡論壇充分發(fā)揮自主權和發(fā)言權,對課程的某些主題可以在網(wǎng)上展開討論,發(fā)表各自見解,探討學習心得、交流學習經(jīng)驗等。對疑難問題將設立專門的網(wǎng)頁,分專題進行深入、系統(tǒng)、理性的探討,為學生提供一個更為廣闊的學習的平臺。同時該模塊接受來自各方面對教學的反饋信息,如教學問卷、學習要求及期望等。
4.答疑模塊
該模塊分為自動答疑和人工答疑兩種方式。系統(tǒng)自動答疑是指當學生遇到疑難問題時,通過網(wǎng)絡遠程提交問題的描述,系統(tǒng)將根據(jù)學生提交的問題描述,對問題庫和領域知識庫進行智能搜索,將對該問題的解答呈現(xiàn)給學生。當沒有檢索到對該問題的解答時,自動將問題發(fā)送到學科教師的留言信箱中,當教師對該問題進行回答后,系統(tǒng)通過發(fā)送留言通知該學生。之后,系統(tǒng)將對該問題的解答歸納到領域知識庫中,以便其他學生遇到類似問題時,能給予自動應答。人工答疑則是學生將問題直接針對某個老師發(fā)送,老師一旦上線給出解答后即反饋給學生。
5.網(wǎng)絡測評模塊
該模塊支持網(wǎng)上自測和正式考試兩種類型。學生可以登錄后進行網(wǎng)絡自測,選擇課程及內(nèi)容進行測試, 可以自己設定章節(jié)、題型和難度系數(shù)等因素, 然后由系統(tǒng)隨機生成測驗卷, 自測完成后, 自動閱卷并給出正確答案; 教師以合法身份登錄后可以對試題庫中試題進行添加、刪除、修改,同時通過人工或智能組卷方式, 生成試卷對學生進行在線考試。系統(tǒng)可以自動生成并發(fā)布考試試卷, 并且能夠對考試結果進行批改、統(tǒng)計和分析。
6.后臺管理模塊
該模塊是網(wǎng)絡教學系統(tǒng)中不可缺少的重要組成部分,主要包括:人員管理、課程管理、試題管理、論壇管理、成績管理等。
四、系統(tǒng)關鍵技術的實現(xiàn)
1.頁面設計
主要采用JSP和部分Servlet定制的標簽來表現(xiàn)。為了加強用戶體驗與交互能力,在網(wǎng)頁設計大量采用AJAX技術來實現(xiàn),如自動完成、在線提示等功能。
2.課程信息錄入流程實現(xiàn)
本系統(tǒng)采用ASSH框架進行開發(fā)實現(xiàn),下面以課程信息錄入為例闡述系統(tǒng)的實現(xiàn)。在響應新增課程數(shù)據(jù)頁面請求時,通過導入課程管理模塊的配置文件struts-course-config.xml來完成業(yè)務流程的部署。當點擊course_add.jsp上的保存按鈕時,將輸入數(shù)據(jù)用set方法存入到courseForm中,然后根據(jù)struts-course-config.xml調(diào)用courseSave.do進行業(yè)務處理。在courseSave.do 中頁面數(shù)據(jù)將從courseForm中讀取。courseSave.do執(zhí)行成功后將顯示頁面(course_save_success.jsp)。courseSave.do對應的CourseSaveAction在導入課程管理模塊的Spring配置文件中指定,也要定義名字為”/coursesave”的受管Bean。同時,CourseSaveAction 使用到CourseService。要使用CourseService,需要在CourseSaveAction 中生成csService 的get、set方法,并且courseContext.xml中對“/courseSave”進行CourseService 的依賴注入。
Spring和Hibernate 從dbContext.xml 中讀取和數(shù)據(jù)庫有關的信息。數(shù)據(jù)庫信息包括數(shù)據(jù)庫連接、與數(shù)據(jù)庫結構相對應的映射文件,把它封裝在dataSource中。然后將dataSource注入到sessionFactory中,sessionFactory同時還對課程信息表CourseInfo,所對應的映射文件CourseInfo.hbm.xml以及Hibernate相關操作然后將sessionFactory注入到數(shù)據(jù)訪問類CourseInfoDAO中。CourseInfoDAO中是對CourseInfo 表進行保存\查詢\刪除等基本數(shù)據(jù)操作,在CourseContext.xml中需要CourseService進行CourseInfoDAO及其代理的依賴注入。這樣做,使得當CourseInfoDAO變化時,只需修改CourseContext.xml 給CourseService 實現(xiàn)新的注入就可以了,由此解除了數(shù)據(jù)訪問層和業(yè)務層的緊密耦合。
3.事務控制
為了對系統(tǒng)中的事務進行統(tǒng)一管理和控制,采用了Spring的聲明式事務管理機制。聲明式事務最大的優(yōu)點就是不需要通過編程的方式管理事務,只需在配置文件中做相關的事務規(guī)則聲明(或通過等價的基于標注的方式),便可以將事務規(guī)則應用到業(yè)務邏輯中。因為事務管理本身就是一個典型的橫切邏輯,這正是 AOP 的用武之地。
五、結束語
成功的網(wǎng)絡教學平臺可以為學習者提供圖文音像并茂、豐富多彩的人機交互界面, 讓學習者樂于學習,能為學習者提供一個自我發(fā)現(xiàn)、自主選擇的智能型個性化學習環(huán)境,同時創(chuàng)設一個多人在線、互相幫助、協(xié)作式學習環(huán)境。本文采用框架技術設計的個性化網(wǎng)絡教學系統(tǒng)旨在構建一個性能優(yōu)良、適合網(wǎng)絡發(fā)展的智能型教學平臺。
參考文獻:
[1]百度百科.http://baike.baidu.com/view/1641.htm.[EB/OL].
[2]孫衛(wèi)琴.精通Struts:基于MVC 的JavaWeb 設計與開發(fā)[M].北京:電子工業(yè)出版社,2005:383-403.
[3]羅時飛.精通Spring [M].北京:電子工業(yè)出版社, 2005:29-48,191-224,303-309.
[4]孫衛(wèi)琴.精通Hibernate:Java 對象持久化技術詳解[M].北京:電子工業(yè)出版社,2005:1-42.
[5]郭鋒等.Spring 從入門到精通[M].北京:清華大學出版社.2006(8):10-250.