劉華明+童彤
摘要:傳統(tǒng)高校作業(yè)收發(fā)及批改存在一定的局限性,利用網(wǎng)絡(luò)技術(shù),開發(fā)基于JSP的作業(yè)管理系統(tǒng),實現(xiàn)作業(yè)的管理,具有省時、省力、方便、快捷的優(yōu)點。該文設(shè)計的作業(yè)管理系統(tǒng)采用B/S、HTML5、JSP等關(guān)鍵技術(shù),Tomcat作為服務(wù)器,輔以BootStrap、Jquery等流行的前端技術(shù)優(yōu)化界面交互。該系統(tǒng)主要實現(xiàn)了課堂上對作業(yè)的網(wǎng)上發(fā)布、交送、評定等功能,滿足用戶需要。
關(guān)鍵詞:作業(yè)管理系統(tǒng);B/S;HTML5;JSP技術(shù);BootStrap;Jquery
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 章編號:1009-3044(2016)25-0066-04
Abstract: In the traditional teaching and homework behind and the presence of limitations, analyzes the job management system based on JSP technology development significance.The job management system based on B/S and it system architecture and key technology such as using JSP design, through the Tomcat container support operation, supplemented by the BootStrap, Jquery popular front-end technology such as optimization of interface interaction.The system mainly implements the class to work online, deliver to, evaluation, and other functions, to facilitate the masses of teachers and students.There are some limitations on submit and distribution of traditional schoolwork, to develop a schoolwork system based on JSP technology using the network technology is a good way to solve the problems, it can achieve the management of the schoolwork, with the advantages of time saving, labor saving, convenient and quick. In this paper, the schoolwork management system uses B/S technology, HTML5 and JSP and so on, as well as use tomcat as sever, and user interface use BootStrap、Jquery technology and so on. The system can submit, distribute schoolwork, correct, assess, and meet customers.
Key words: schoolwork management system; B/S; HTML 5; JSP technology; BootStrap; Jquery
1 背景
隨著信息技術(shù)的發(fā)展,以多媒體計算機(jī)、網(wǎng)絡(luò)為代表的信息技術(shù)給教育的發(fā)展帶來了新的生機(jī),使傳統(tǒng)的教學(xué)方式重新充滿活力[1]。網(wǎng)絡(luò)使教育傳播不再受時間和地點的限制,網(wǎng)上辦公越來越流行成為了一種時尚,作業(yè)管理亦涵蓋于其中,必須認(rèn)識到在線作業(yè)管理的系統(tǒng)的必要性。當(dāng)前,各式各樣的作業(yè)管理系統(tǒng)層出不窮,所依賴的技術(shù)與構(gòu)架也是五花八門,比較流行的如基于PHP、FTP、JSP、Python、Ruby、ASP等,但是就目前而言,我國的各所學(xué)校仍未廣泛的采用這種網(wǎng)絡(luò)化的作業(yè)管理軟件。一個優(yōu)秀的系統(tǒng),能夠切切實實的給廣大教師和學(xué)生帶來便利,真正地為辦公信息化、作業(yè)電子化做貢獻(xiàn);從而大大的提升教師們的辦公水平和效率,促使個高校的管理方針向著信息化、網(wǎng)絡(luò)化、集成化的方向發(fā)展。作業(yè)是教學(xué)活動一項重要工作,讓作業(yè)的提交、發(fā)布等問題更加便利是教學(xué)活動順利進(jìn)行的重要條件。所以,有效而又便利作業(yè)管理系統(tǒng)便成為教學(xué)活動中不可或缺的一部分[1]。
2 系統(tǒng)設(shè)計
2.1 系統(tǒng)結(jié)構(gòu)
網(wǎng)站的總體結(jié)構(gòu)和流程圖,普通用戶(教師和學(xué)生)和管理員分別從不同的入口進(jìn)入,通過登陸控制器LoginController的檢測后許可登入,管理員、教師、學(xué)生分別擁有各自的面板控制器AdminDashBoard、TeacherDashBoard、StudentDashBoard,經(jīng)過面板控制器轉(zhuǎn)發(fā)數(shù)據(jù)到達(dá)各個頁面,如圖1所示。
該系統(tǒng)是基于B/S(瀏覽器/服務(wù)器)模式。B/S模式是對C/S模式的一種改進(jìn)結(jié)構(gòu),是一種全新的軟件系統(tǒng)構(gòu)造技術(shù),又稱三層結(jié)構(gòu)[2]。它的功能分層如圖2所示。在B/S體系結(jié)構(gòu)系統(tǒng)中,用戶通過瀏覽器向分布在網(wǎng)絡(luò)上的服務(wù)器發(fā)出一個請求,服務(wù)器對這個請求進(jìn)行處理,將用戶所需信息再發(fā)送到瀏覽器上。B/S結(jié)構(gòu)的最大優(yōu)點就在于它使服務(wù)器擔(dān)負(fù)更多的工作,而簡化客戶機(jī)的工作。客戶機(jī)上只需配置少量的客戶端軟件,而對數(shù)據(jù)庫的訪問和應(yīng)用程序的執(zhí)行將在服務(wù)器上完成,即瀏覽器只需要發(fā)出客戶請求、數(shù)據(jù)請求、加工、結(jié)果返回以及動態(tài)網(wǎng)頁的生成等工作全部由Web Senrer完成[3]。在B/S結(jié)構(gòu)下,所有客戶端只需裝上操作系統(tǒng)、網(wǎng)絡(luò)協(xié)議軟件、瀏覽器。這樣使師生通過網(wǎng)絡(luò)可以不受時間地點進(jìn)行作業(yè)的上傳與批改操作[4]。
2.2 開發(fā)工具和開發(fā)平臺
本系統(tǒng)運用MyEclipse企業(yè)級集成開發(fā)環(huán)境、Tomcat服務(wù)器、Dreamweaver網(wǎng)頁編輯器、jQuery、Fileupload、Uploadify等上傳下載插件、JavaEE企業(yè)級的應(yīng)用框架、Windows操作系統(tǒng)等開發(fā)工具和開發(fā)平臺。
在開發(fā)技術(shù)上采用Html5超文本標(biāo)記語言、Browser/Server(簡稱B/S)網(wǎng)絡(luò)結(jié)構(gòu)模型、JSP技術(shù)等技術(shù),本系統(tǒng)考慮到學(xué)生和教師的需求、硬件投入綜合因素,一般安裝windows7,8以及xp操作系統(tǒng)的電腦均可以運行該作業(yè)管理系統(tǒng)。本系統(tǒng)是采用JSP技術(shù)編制,JSP是將純Java代碼嵌入在HTML中實現(xiàn)動態(tài)功能的一種技術(shù),能為創(chuàng)建高度動態(tài)的Web應(yīng)用提供一個獨特的開發(fā)環(huán)境[5]。JSP技術(shù)不僅繼承了Java語言的優(yōu)點,還一改ASP技術(shù)獨占的、封閉的開發(fā)過程,在原來的基礎(chǔ)上更易于維護(hù)、開放和可擴(kuò)充[6]。在選用后臺數(shù)據(jù)庫時,考慮MySQL。由于作業(yè)上傳下載需要進(jìn)行大量數(shù)據(jù)讀寫操作,在效率方面要求很高。本系統(tǒng)采用MySQL作為后臺數(shù)據(jù)庫,采用支持事務(wù)和分布式處理的MySQL大型數(shù)據(jù)庫進(jìn)行數(shù)據(jù)管理,完全可以滿足作業(yè)管理數(shù)據(jù)處理需求。
2.3 系統(tǒng)各功能模塊的設(shè)計
作業(yè)管理系統(tǒng)顧名思義,它必須實現(xiàn)網(wǎng)上布置作業(yè),提交作業(yè)和批改作業(yè)的功能[7]。根據(jù)現(xiàn)有系統(tǒng)主要實現(xiàn)的功能,現(xiàn)分為以下九個功能模塊:①登陸模塊、②面板控制器模塊、③公告模塊、④班級管理模塊、⑤教師管理模塊、⑥學(xué)生管理模塊、⑦課程管理模塊、⑧提問管理模塊、⑨作業(yè)管理模塊。各模塊組成部分如下:
①登陸模塊:由網(wǎng)址進(jìn)入登陸界面,登陸界面分為:老師/學(xué)生登錄界面,管理員登陸界面,輸入老師/學(xué)生/管理員的賬號和密碼通過登錄驗證進(jìn)入對應(yīng)的主界面,進(jìn)行相應(yīng)操作。
②面板控制器模塊:分為三個部分:管理員面板控制器模塊、教師面板控制器模塊、學(xué)生面板控制器模塊。
③公告模塊:分為公告管理模塊、公告查看模塊。
④班級管理模塊:分為添加新班級、修改更新班級信息、刪除班級。
⑤教師管理模塊:分為添加新教師、修改教師信息、刪除教師。
⑥學(xué)生管理模塊:分為添加新學(xué)生、修改學(xué)生信息、刪除學(xué)生。
⑦課程管理模塊:分為添加新課程、修改課程信息、刪除課程。
⑧提問管理模塊:分為提出新問題、修改問題信息、刪除問題。
⑨作業(yè)管理模塊:分為教師發(fā)布模塊、學(xué)生提交模塊、教師批改模塊。
3 數(shù)據(jù)庫設(shè)計
本系統(tǒng)采用MySQL作為后臺數(shù)據(jù)庫環(huán)境。該作業(yè)管理系統(tǒng)數(shù)據(jù)庫所包括的相關(guān)表有班級表、課程表、教師表、學(xué)生表、管理員表、公告表、問題表、作業(yè)布置表、作業(yè)內(nèi)容表、作業(yè)屬性表等。關(guān)聯(lián)表間的E-R圖:
1) 班級表(unit_class)
用于存儲班級信息,主鍵為id,一般情況下班級名稱物理意義上同樣具有唯一性。
2) 課程表(unit_course)
用于存儲課程信息,外鍵關(guān)聯(lián)unit_class、user_teacher。
3) 教師表(user_teacher)
用來存儲教師信息,提供被unit_course的外鍵檢索。
4) 學(xué)生表(user_student)
放置學(xué)生信息,外鍵unit_course。
5) 管理員表(user_admin)
用于存儲管理員的信息。
6) 公告表(msg_Notice)
用于存放公告信息。
7) 問題表(msg_question)
用于存儲學(xué)生提出的問題,外鍵關(guān)聯(lián)user_student、unit_course。
8) 作業(yè)發(fā)布表(ass_publish)
用于存儲教師所發(fā)布的作業(yè)信息,外鍵關(guān)聯(lián)user_teacher、unit_class、unit_course。
9) 作業(yè)內(nèi)容表(ass_detail)
用于存放學(xué)生所提交作業(yè)的具體文件和文件名,主鍵id同時是外鍵關(guān)聯(lián)作業(yè)屬性表的id字段。
10) 作業(yè)屬性表(ass_attribute)
用于存放學(xué)生所提交作業(yè)的各種屬性,外鍵關(guān)聯(lián)發(fā)布作業(yè)表、學(xué)生表,該表的主鍵id與對應(yīng)的作業(yè)內(nèi)容表id應(yīng)保持一致。
4 系統(tǒng)的功能實現(xiàn)
4.1 數(shù)據(jù)庫的連接
用JDBC來訪問MySQL數(shù)據(jù)庫,JDBC是一種用于執(zhí)行SQL語句的Java API,它由一組用Java編程語言編寫的類和接口組成。JDBC可做三件事與數(shù)據(jù)庫建立連接,發(fā)送SQL語句,處理結(jié)果[8]。
4.2 系統(tǒng)功能實現(xiàn)
上面的系統(tǒng)各功能模塊的設(shè)計中所提到的功能如:登陸模塊、面板控制器模塊、公告模塊、班級管理模塊、教師管理模塊、學(xué)生管理模塊、課程管理模塊、提問管理模塊、作業(yè)管理模塊。先均已實現(xiàn),并開始使用。因此該系統(tǒng)的可行性又進(jìn)一步提高。
如登陸驗證代碼(學(xué)生):Student student = new Student();
student.setId(Integer.parseInt(myID));
student.setPassword(myPwd);
System.out.println("學(xué)生"+myID+"請求登錄");
StudentService ss = new StudentService();
if (ss.checkUser(student)) {
request.getSession().setAttribute("loginUser", student);
response.sendRedirect("/aaaa/StudentDashBoard");
}else{
request.getSession().setAttribute("errinfo", "用戶名或密碼錯誤");
response.sendRedirect("/aaaa/Index");
}
}else{
response.sendRedirect("/aaaa/");
}
5 結(jié)束語
該作業(yè)管理系統(tǒng)相比于傳統(tǒng)的作業(yè)提交、老師批改大大的提高了便利性,該系統(tǒng)具有通用性強(qiáng),可移植性好,不僅能滿足局域網(wǎng)作業(yè)提交和批改需要,同時適用于遠(yuǎn)程作業(yè)提交和批改需要。另外,便于應(yīng)用于各班級、各類課程中;在不同的學(xué)校應(yīng)用只要更換教師與學(xué)生表的數(shù)據(jù)信息即可投入使用,操作方便,具有推廣價值[9]。
參考文獻(xiàn):
[1] 劉珍, 楊勝斌, 張錦鴻. 基于J2EE的在線作業(yè)管理系統(tǒng)設(shè)計與開發(fā)[J]. 計算機(jī)與現(xiàn)代化, 2011(7): 154-156.
[2] 孫秀娟, 楊民峰. 基于WEB的作業(yè)管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報, 2009, 8(2): 30-32.
[3] 劉遠(yuǎn)鷗, 羅波, 房棟. 根據(jù)B/S體系結(jié)構(gòu)開發(fā)應(yīng)用系統(tǒng)分析[J]. 科技信息:科技教育版, 2006(1): 145.
[4] 何文. 基于B/S結(jié)構(gòu)的網(wǎng)上作業(yè)管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 信息技術(shù), 2012(12): 49-51
[5] 胡曉旭. 基于B/S模式和JSP技術(shù)的網(wǎng)絡(luò)教學(xué)系統(tǒng)的研究與實現(xiàn)[D]. 上海: 華東師范大學(xué), 2010.
[6] 汪欣. 基于Web的綜合作業(yè)系統(tǒng)[J]. 黃山學(xué)院學(xué)報, 2011, 13(5): 47-49.
[7] 陳路生. 電子作業(yè)管理系統(tǒng)的可行性設(shè)計與實現(xiàn)[J]. 安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報, 2012, 11(2): 52-54+75.
[8] 百度百科. JDBC[EB/OL]. [2016-07-28].http://baike.baidu.com/view/25611.htm.
[9] 潘敏. 高校"網(wǎng)上作業(yè)系統(tǒng)"的設(shè)計與實現(xiàn)[J]. 電腦知識與技術(shù):認(rèn)證考試, 2004(2): 60-61.