freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于moodle技術(shù)的課程管理系統(tǒng)設(shè)計與實現(xiàn)本科畢業(yè)論文-資料下載頁

2025-05-06 00:06本頁面

【導(dǎo)讀】隨著中職學(xué)校教育信息化的迅速發(fā)展,教學(xué)資源庫的建設(shè)也日益重要,生更好地利用網(wǎng)絡(luò)進(jìn)行自主學(xué)習(xí),是十分必要的。運行的新型網(wǎng)絡(luò)教學(xué)輔助平臺。同時,根據(jù)學(xué)校實際需求,結(jié)合目前Moodle. 在服務(wù)器端進(jìn)行功能擴展完成了網(wǎng)絡(luò)攝像頭視頻信息的傳輸,Android智。這些擴展功能主要包括微。移動終端的在線學(xué)習(xí)平臺等。教師可以依據(jù)學(xué)習(xí)者的學(xué)習(xí)情況、個性需要,動終端上系統(tǒng)的、深入的進(jìn)行學(xué)習(xí),從而提高教學(xué)效率。

  

【正文】 發(fā)中使用 SQLite 數(shù)據(jù)庫 SQLite 是 一個非常流行的嵌入式數(shù)據(jù)庫,它支持 SQL 語言,并且只利用很少的內(nèi)存就有 很好的性能。此外它還是開源的,任何人都可以使用它。許多開源項目 (Mozilla, PHP, Python)都使用了 SQLite。 SQLite 由以下幾個組件組成: SQL 編譯器、內(nèi)核、后端以及附件。SQLite 通過利用虛擬機和虛擬數(shù)據(jù)庫引擎( VDBE),使調(diào)試、修改和擴展 SQLite 的內(nèi)核變得更加方便。 東南大學(xué)碩士學(xué)位論文 24 SQLite 內(nèi)部結(jié)構(gòu)如圖 27 所示: 圖 27 SQLite 內(nèi)部結(jié)構(gòu) SQLite 基本上符合 SQL92 標(biāo)準(zhǔn),和其他的主要 SQL 數(shù)據(jù)庫沒什么區(qū)別。它的優(yōu)點就是高效, Android 運行環(huán)境包含了完整的 SQLite。 SQLite 和其他數(shù)據(jù)庫最大的不同就是對數(shù)據(jù)類型的支持,創(chuàng)建一個表時,可以在 CREATE TABLE 語句中指定某列的數(shù)據(jù)類型, 操作時 可以把任何數(shù)據(jù)類型放入任何列中。當(dāng)某個值插入數(shù)據(jù)庫時, SQLite 將檢查它的類型。如果該類型與關(guān)聯(lián)的列不匹配,則 SQLite 會嘗試將該值轉(zhuǎn)換成該列的類型。如果不能轉(zhuǎn)換,則該值將作為其本身具有的類型存儲。比如可以把一個字符串( String)放入 INTEGER 列。 SQLite 稱這為“弱類型”( manifest typing.)。 3. 由于 Android 智能手機不支持 ocx 插件,對于在線實時直播視頻技術(shù),采用搭建 WEB 服務(wù)器媒體服務(wù)器,媒體服務(wù)器不間斷讀取網(wǎng)絡(luò)攝像頭視頻圖片,視頻圖片可以采用前面介紹的 CGI 技術(shù)按照流媒體處理方式讀取,然后設(shè)置 WEB 頁面定時刷新,每秒讀取 24 張 CGI 獲得的圖片顯示到 WEB 服務(wù)器中,達(dá)到連續(xù)的效果。 此外, SQLite 不支持一些標(biāo)準(zhǔn)的 SQL 功能,特別是外鍵約束( FOREIGN KEY constraints),嵌套 transcaction 和 RIGHT OUTER 第二章 課程管理系統(tǒng)的需求 25 JOIN 和 FULL OUTER JOIN, 還有一些 ALTER TABLE 功能。除了上述功能外, SQLite 是一個完整的 SQL 系統(tǒng)。 本章小結(jié) 本章根據(jù)江蘇省江陰中等專業(yè)學(xué)校的實際情況,提出了課程管理系統(tǒng)的需求,并對關(guān)鍵技術(shù)進(jìn)行了介紹。首先,論文提出了課程管理系統(tǒng)的 普遍 需求,在對 開源 Moodle 課程管理平臺的各個功能模塊分析的基礎(chǔ)上,提出了擴展需求, 使其 可 以 滿足江陰中專的特殊要求。這些需求包括簡易多媒體教室的構(gòu)建,異構(gòu)數(shù)據(jù)庫的數(shù)據(jù)同 步, 基礎(chǔ)云計算教學(xué)平臺應(yīng)用, 以及利用 Android 移動終端實現(xiàn)在線學(xué)習(xí)的需求。在后面的章節(jié)中,論文將對課程管理平臺進(jìn)行深入研究,實現(xiàn)這些需求。東南大學(xué)碩士學(xué)位論文 26 第 三 章 服務(wù)器端擴展設(shè)計與實現(xiàn) 根據(jù)需求,搭建江陰中等專業(yè)學(xué)校的系統(tǒng)網(wǎng)絡(luò)架構(gòu)如圖 31 所示: 圖 31 系統(tǒng)架構(gòu)圖 系統(tǒng)架構(gòu)圖描述如下: ,其中包括:系統(tǒng)基礎(chǔ) Moodle 平臺搭建,數(shù)據(jù)庫構(gòu)建等。 ,主要包括:視頻攝像頭數(shù)據(jù)傳輸、教學(xué)資源共享、語音傳輸終端等。 ,主要實現(xiàn)與教務(wù)系統(tǒng) 、人事系統(tǒng)中的 學(xué) 生教師信息數(shù)據(jù)共享,教師和學(xué)生不需要注冊就可以登錄到課程系統(tǒng)學(xué)習(xí)網(wǎng)絡(luò)教學(xué)課程。 Moodle平臺的二次開發(fā) Moodle 平臺的二次開發(fā)主要采用了組件重用技術(shù)。三層架構(gòu)主要包括:數(shù)據(jù)訪問組件、業(yè)務(wù)邏輯組件和表示層組件,下層組件為上層組件提供服務(wù)。另外,在開發(fā)組件庫的過程中要進(jìn)行組件維護(hù)和管理工具的設(shè)計,合理地將組件組織在一起,形成完整的組件庫。 標(biāo)準(zhǔn)組件應(yīng)用框架結(jié)構(gòu)如圖 32 所示。 第三章 服務(wù)器端擴展設(shè)計與實現(xiàn) 27 WEB ServicesOt her App licat ion sBLLDALF actoryDAL Sqlserver DAL Oracle DAL MysqlSQ L S e r v e r 數(shù)據(jù)庫 O r a c le 數(shù)據(jù)庫 My SQ L 數(shù)據(jù)庫EN TITY組件庫管理維護(hù)工具組件索引組件入庫組件更新組件轉(zhuǎn)移 圖 32 組件庫總體設(shè)計 將封裝的活動模塊從橫向按照 Web平臺的三層架構(gòu)劃分為對應(yīng)的層次,以確定組件單元,并使各層組件之間能夠進(jìn)行通信,這樣才能滿足組件所服務(wù)的目標(biāo)平臺的體系結(jié)構(gòu)進(jìn)行組件設(shè)計的原則。 1. 數(shù)據(jù)訪問組件( DAL):有時候也稱為是持久組件,其功能主要是負(fù)責(zé)數(shù)據(jù)庫的訪問。實現(xiàn)對數(shù)據(jù)表的 Select, Insert, Update, Delete的操作。通過 ORM( Object/Relation Mapping)的元素,就會對包括對象和數(shù)據(jù)表之間的 mapping(映射),以及對象實體的持久化。 2. 業(yè)務(wù)邏輯組件( BLL):是整個系統(tǒng)的核心,它與這個系統(tǒng)的業(yè)務(wù) (領(lǐng)域)有關(guān)。 3. 表示組件 (UI):是系統(tǒng)的界面部分,負(fù)責(zé)界面與整個系統(tǒng)的交互。 4. 實體組件 (Entity):實體組件是數(shù)據(jù)庫表結(jié)構(gòu)映射。 Moodle關(guān)系映射 ORM,主要實現(xiàn)了數(shù)據(jù)庫表結(jié)構(gòu)與代碼之間的關(guān)系匹配,方便通過運用對象操作的概念,對數(shù)據(jù)表進(jìn)行操作。 ORM 實現(xiàn)了數(shù)據(jù)表與對象時間的關(guān)系映射,將程序中的對象自動持久化到關(guān)系數(shù)據(jù)庫中。將數(shù)據(jù)從一種形式經(jīng)過序列化以后轉(zhuǎn)化為另外一種形式。 ORM 框架對于Moodle 的應(yīng)用系統(tǒng)來說都能滿足基本需求,可以大大降低開發(fā)難度,提高開發(fā)效率,但是它在 SQL 優(yōu)化方 面,比單純的 SQL 要差一些,對復(fù)雜關(guān)聯(lián)、 SQL 內(nèi)嵌表達(dá)式的處理可能不是很理想。 Moodle 課程管理系統(tǒng)采用 ORM 關(guān)系映射,把數(shù)據(jù)庫轉(zhuǎn)換為對象,通過緩存來提高效率,靈活的東南大學(xué)碩士學(xué)位論文 28 使用二級緩存和查詢緩存極大的緩解數(shù)據(jù)庫的查詢壓力,提升系統(tǒng)性能。 5. 數(shù)據(jù)訪問接口( DAL Factory):在數(shù)據(jù)訪問組件( DAL)中,采用 DAL 接口抽象出數(shù)據(jù)訪問邏輯,并以 DAL Factory 作為數(shù)據(jù)訪問組件對象的工廠模塊。分別支持 SQL Server DAL 和支持 Oracle的 Oracle DAL等多種不同的數(shù)據(jù)庫。 Entity 組件 則包含了數(shù)據(jù)實體對象。 分層組件框架有如下優(yōu)點:提高了重用性,靈活性,擴展性 ,修改局部不會對整體有影響。各個分層組件之間高內(nèi)聚、低耦合。 基于 WEB 的教學(xué)支撐平臺專用組件設(shè)計實現(xiàn)技術(shù) 目前比較流行的組件技術(shù)包括 CORBA、 COM/DCOM、 WJB 以及 NET、JAVA、 PHP 組件技術(shù),這些組件技術(shù)所適用的場合各個不同,論文主要采用 PHP 組件標(biāo)準(zhǔn)作為組件開發(fā)的技術(shù)。 下面以 PHP 典型的三層框架為例來完成對 Moodle 數(shù)據(jù)表的操作。 CREATE TABLE t_user` ( `u_id` int(11) NOT NULL, `u_name` varchar(20) default NULL, `u_password` varchar(50) default NULL, PRIMARY KEY (`u_id`) ) 數(shù)據(jù)表的結(jié)構(gòu)是: 用戶 ID,類型是 int 類型。 用戶姓名 u_name 類型是 varchar 類型 用戶密碼 u_password 類型是 varchar 類型 通過圖 32 描述的 三 層結(jié)構(gòu),進(jìn)行代碼修改,首先構(gòu)造 UI 層, UI層主要是采用 HTML 代碼和嵌入 php 文件。這里主要介紹顯 示用戶信息的 php moodle 頁面。頁面名稱是 。 ?php include_once 39。../facade/39。 ? ?? form action= method=post id=Find 第三章 服務(wù)器端擴展設(shè)計與實現(xiàn) 29 用戶名 : input type=text name=userName id=userName value=?php echo $userName? input type=submit value=搜索 /form /td /tr /table table width=100% border=0 cellspacing=0 cellpadding=0 tr td width=20%用戶 id/td td width=20%用戶名 /td td width=20%用戶密碼 /td /tr ?php for($i = 0。 $i sizeof ( $userlist )。 $i ++) { echo 39。trtd width=20%39。 . $userlist[$i][0] . 39。/tdtd39。.$userlist[$i][1].39。/tdtd39。.$userlist[$i][2].39。td//tr39。 } ? /table 是業(yè)務(wù)邏輯層, UI 界面調(diào)用業(yè)務(wù)邏輯層。 BLL 業(yè)務(wù)層 : ?php include_once 39。../DAL/39。 if(isset($_POST[userName])amp。amp。!$_POST[userName]==39。39。) { $userlist = findUsers($_POST[userName])。 東南大學(xué)碩士學(xué)位論文 30 $userName = $_POST[userName]。 } else { $userlist = findUsers(39。39。)。 $userName = 39。39。 } ? 業(yè)務(wù)邏輯層通過調(diào)用 文件,完成對數(shù)據(jù)訪問層的數(shù)據(jù)訪問。 DAL 數(shù)據(jù)訪問層 流程圖如 圖 33 所示。 圖 33 數(shù)據(jù)訪問層 實現(xiàn)框架圖 DAL 文件夾 (數(shù)據(jù)訪問層代碼 ) 主要代碼如下 ,與圖33 數(shù)據(jù)訪問層流程圖一致。 : ?php function findUsers($usersName) { //包含配置文件 第三章 服務(wù)器端擴展設(shè)計與實現(xiàn) 31 include_once 39。../39。 //創(chuàng)建數(shù)據(jù)庫連接 $conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password)。 mysql_select_db($mysql_database)。 //執(zhí)行查詢 $query=select * from t_user 。 if(isset($usersName)amp。amp。!$usersName==39。39。) { $query = $query.where u_name = 39。.$usersName.39。 } $result=mysql_query($query,$conn)。 //將返回值放入數(shù)組 $array = array()。 while($row=mysql_fetch_row($result)) { $array[] = $row。 } //釋放資源 ,關(guān)閉連接 mysql_free_result($result)。 mysql_close()。 //返回結(jié)果 return $array。 } ? 數(shù)據(jù)訪問層通過讀取配置文件 ,來完成對 MYSQL 數(shù)據(jù)庫的讀取。 mysql_connect() 函數(shù)打開非持久的 MySQL 連接。 mysql_select_db() 函數(shù)設(shè)置活動的 MySQL 數(shù)據(jù)庫。 mysql_query() 函數(shù)執(zhí)行一條 MySQL 查詢。 東南大學(xué)碩士學(xué)位論文 32 mysql_free_result() 函數(shù)釋放結(jié)果內(nèi)存。 配置文件 如下。 ?php $mysql_server_name=:3306。 //數(shù)據(jù)庫服務(wù)器名稱 $mysql_username=root。 // 連接數(shù)據(jù)庫用戶名 $mysql_password=root。 // 連接數(shù)據(jù)庫密碼 $mysql_database=work。 // 數(shù)據(jù)庫的名字 ? 到目前為止,沒有一種組件技術(shù)開發(fā) 出的組件可以用于所有技術(shù)平臺,本論文只是以 PHP 組件技術(shù)作為技術(shù)手段,其適應(yīng)性是有限的,因此還需要從技術(shù)手段對組件庫進(jìn)行擴展,比如向組件庫添加 EJB、COM/DCOM 技術(shù)標(biāo)準(zhǔn)組件等。 Moodle WEB 服務(wù)構(gòu)建 Moodle 開源平臺是基于 PHP 技術(shù)完成的教學(xué)平臺,通過 PHP WEB服務(wù)可以完成與其他系統(tǒng),移動終端進(jìn)行數(shù)據(jù)對接。智能終端可以調(diào)用WEB 服務(wù)組件對數(shù)據(jù)庫數(shù)據(jù)進(jìn)行讀取。 文件 是數(shù)據(jù)庫操作的基類,完成對數(shù)據(jù)庫的讀取和操作,其中: Moodle 后臺主要采用了 Mysql 數(shù)據(jù)庫 ,class_DBOperation 主要完成,對數(shù)據(jù)庫的操作。這里主要包含連接數(shù)據(jù)庫( class_DBOperation 方法實現(xiàn)),執(zhí)行 SQL 數(shù)據(jù)
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1