日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

一款完全開源的在線教育java源碼

 instl 2019-06-22

源碼簡介

1.1簡介
在Exam++考試系統(tǒng)第一版的基礎上,我們對ExamStack V2.0進行了大量代碼重構(gòu),同時也對數(shù)據(jù)模型做了部分調(diào)整。為了減小學員考試交卷時大量并發(fā)帶來的系統(tǒng)風險,我們嘗試采用成熟的消息隊列框架RabbitMQ來解決這一問題,因此我們的數(shù)據(jù)庫以及系統(tǒng)的架構(gòu)同第一版相比,發(fā)生了不小的變化。
1.2 部署要點
Management.war和Portal.war需要部署在同一個目錄下。
ExamStack V2.0增加了培訓功能,因為需要保存培訓材料,所以請留出足夠的磁盤空間(以實際需要為準)。
要保證RabbitMQ服務狀態(tài)為運行狀態(tài)。
要保證ScoreMarker狀態(tài)為運行狀態(tài),同時ScoreMarker調(diào)用服務地址要配置正確。

應用服務器安裝配置

2.1 服務器安裝部署
2.1.1 服務器配置
操作系統(tǒng):Linux、Windows
內(nèi)存:最低2G,推薦8G
2.1.2 java運行環(huán)境
Java 8
2.1.3 服務器
Tomcat 8
RabbitMQ
MySql 5.0以上
2.2 應用部署
2.2.1 數(shù)據(jù)庫
在MySql中新建一個數(shù)據(jù)庫examstack,字符集使用utf8 — UTF-8 Unicode
使用我們提供的examstack.sql還原examstack
設置好對應的訪問權(quán)限
2.2.2 RabbitMQ
安裝最新版本的RabbitMQ,具體安裝方法,在網(wǎng)絡上可以找到很多。
2.2.3 應用
將Management.war和Portal.war放到Tomcat應用程序目錄(webapps)下。
啟動Tomcat,webapps目錄下會生成兩個文件夾(Management和Portal)。
分別進入到Management/WEB-INF/Spring和Portal/WEB-INF/Spring下修改root-context.xml文件,將數(shù)據(jù)庫地址、用戶名和密碼修改成正確的內(nèi)容。修改完成后重啟tomcat服務器。
需要修改的內(nèi)容如下:

1
2
3
<property name="jdbcUrl" value="jdbc:mysql:/*.*.*.*:3306/examstack?useUnicode=true&characterEncoding=UTF-8" />
<property name="user" value="root" />
<property name="password" value="***" />

訪問http://localhost:8080/Management和http://localhost:8080/Portal可以進入到管理后臺頁面和學員頁面,并可以正常登陸,則應用配置成功。
注意:*在完成這一步后學員考試交卷無法完成,需要部署ScoreMarker。*
部署ScoreMarker
Linux下-解壓scoreMarker到/opt/目錄。 確認config/scoremarker.properties文件配置正確。 拷貝scoremarker 執(zhí)行腳本到init.d目錄下并檢查腳本中的配置。
Windows下-解壓scoreMarker到任意目錄。 確認config/scoremarker.properties文件配置正確。 修改installService.bat中APP_HOME為scoreMarker目錄。 運行installService.bat后啟動服務ScoreMarkerService服務。

更新說明

系統(tǒng)架構(gòu):管理后臺現(xiàn)在獨立成一個新項目,不再和第一版一樣和前臺合在一起。
引入RabbitMq,用于接受用戶提交的答題卡,通過ScoreMarker從消息隊列獲取答題卡并交卷,減小大量用戶提交導致的服務器故障幾率。
試題內(nèi)容存儲格式由xml改為json
增加教師角色,現(xiàn)在教師用戶可以正確地使用自己的權(quán)限管理學員、試題、試卷、考試以及培訓。
優(yōu)化系統(tǒng)界面,新的界面看起來更加清爽、專業(yè)。
新增了DashBoard,管理界面看起來會更專業(yè)。
練習歷史現(xiàn)在專門用一張表記錄,使開發(fā)相關(guān)統(tǒng)計變得更容易。
考試和練習:考試現(xiàn)在分為正式考試和模擬考試兩種,正式考試需要教師或管理員審核,而模擬考試不需要審核。正式考試又分為公有和私有兩種類型,公有考試是可以申請的考試,私有考試則需要教師或管理員指定學員(這里由管理員指定也被我們認為是審核的一種方式)。
新增審核功能,現(xiàn)在教師創(chuàng)建的試卷、考試都需要超級管理員審核。超級管理員自己創(chuàng)建的不需要審核。同時,超級管理員和教師也可以審核學員的考試申請。
新增人工閱卷功能。包含主觀題的考試試卷,教師或超級管理員通過人工閱卷后可以確定最終分數(shù)。全部是客觀題的試卷不需要閱卷。
新增考試成績統(tǒng)計功能,可以查看特定考試下學員的分數(shù),同時可以對分數(shù)進行排序。
新增學習記錄查詢功能,教師和管理員現(xiàn)在可以方便地查看學員的練習記錄、培訓記錄和考試記錄。
新增快速考試模式,通過輸入準考證號即可直接進入到對應的考試頁面。
新增繼續(xù)考試功能,現(xiàn)在學員在考試過程中中斷考試后,繼續(xù)進入考試后,學員的答題記錄會恢復到中斷前的狀態(tài)。
題庫管理:優(yōu)化試題修改功能,現(xiàn)在可以正確地修改試題的基本信息。
新增培訓功能,教師或超級管理員可以發(fā)布培訓資料(視頻和pdf文檔)。學員可以選擇自己需要參加的培訓進行學習,培訓分為視頻和pdf格式的文檔兩種。
新增虛擬班級功能,教師或管理員現(xiàn)在可以通過虛擬班組很方便地管理學員。

系統(tǒng)問題處理

1.不能獲得數(shù)據(jù)庫連接;
'

1
Cause:org.springframework.jdbc.CannotGetJdbcConnectionException:Could not get JDBC Connection;nested exception is java.sql.SQLException:Access denied for user 'root'@'localhost

請檢查數(shù)據(jù)庫連接字符串是否正確,同時檢查數(shù)據(jù)庫名、用戶名和密碼是否設置正確。
2.交卷失敗;

1
RabbitMQ沒有啟動會導致應用程序連接RabbitMQ失敗

復制代碼請檢查RabbitMQ服務是否啟動。
3.學員交卷后,管理界面學員對應的狀態(tài)沒有改變;

1
交卷成功后,學員考試狀態(tài)會修改成已交卷或者已閱卷,如果在提示“交卷成功”后沒有發(fā)生任何變化,證明ScoreMarker沒有正常啟動或者ScoreMarker調(diào)用接口失敗。

復制代碼請檢查ScoreMarker是否啟動。同時請保證ScoreMarker能調(diào)用到Management提供的接口,這一點在ScoreMarker部署中已經(jīng)說明。
4.RabbitMQ、MySql、ScoreMarker無法啟動或經(jīng)常被Kill掉

1
我們在測試過程中發(fā)現(xiàn),內(nèi)存不足的情況下(我們使用的是1G內(nèi)存),RabbitMQ、MySql、ScoreMarker經(jīng)常被Kill,而且無法啟動,查看日志會發(fā)現(xiàn)提示內(nèi)存不夠。

復制代碼查看下日志,如果是內(nèi)存不夠的原因,那就趕緊加內(nèi)存吧。為了保證系統(tǒng)正常運行,內(nèi)存不能低于2G。
5.bug更新日志
2016-2-15 解決試題導入報錯的bug
2016-3-15 解決考試用戶列表不能正常分頁的bug

測試截圖

jsks-2016-07-29_134017 jyks-2016-07-29_133747 jyks-2016-07-29_133832 jyks-2016-07-29_133937 jyks-2016-07-29_134101

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多