![基于BS模式的在線教育系統(tǒng)設計與實現(xiàn)_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/29/6f4c02ad-18ad-4b4f-aa56-029a594007cf/6f4c02ad-18ad-4b4f-aa56-029a594007cf1.gif)
![基于BS模式的在線教育系統(tǒng)設計與實現(xiàn)_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/29/6f4c02ad-18ad-4b4f-aa56-029a594007cf/6f4c02ad-18ad-4b4f-aa56-029a594007cf2.gif)
![基于BS模式的在線教育系統(tǒng)設計與實現(xiàn)_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/29/6f4c02ad-18ad-4b4f-aa56-029a594007cf/6f4c02ad-18ad-4b4f-aa56-029a594007cf3.gif)
![基于BS模式的在線教育系統(tǒng)設計與實現(xiàn)_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/29/6f4c02ad-18ad-4b4f-aa56-029a594007cf/6f4c02ad-18ad-4b4f-aa56-029a594007cf4.gif)
![基于BS模式的在線教育系統(tǒng)設計與實現(xiàn)_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-6/29/6f4c02ad-18ad-4b4f-aa56-029a594007cf/6f4c02ad-18ad-4b4f-aa56-029a594007cf5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、西北第二民族學院 學士學位論文 論文題目: 基于基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn)模式的在線教育系統(tǒng)設計與實現(xiàn) 院(部)名 稱: 信息與計算科學學院信息與計算科學學院 學 生 姓 名: 張張 波波 專 業(yè): 信息與計算科學信息與計算科學 學 號: 2003015920030159 指導教師姓名: 馬馬 占占 有有 論文提交時間: 20072007 年年 5 5 月月 論文答辯時間: 20072007 年年 6 6 月月 學位授予時間: 、 西北第二民族學院教務處制 I 摘要摘要 隨著 internet 的迅速發(fā)展,傳統(tǒng)教育方式已無法滿足學生的需求,在線教育 系統(tǒng)計算機技術和多媒體技術相
2、結合的新一代教育方式,突出了時間和空間性,在 線教育是讓更多的學習者共享資源。本文系統(tǒng)通過 C#+A 實現(xiàn),它在學生與教 師之間搭起了一坐橋梁:學生可以及時進行在線注冊,在線登陸,修改個人資料, 班級瀏覽,提問瀏覽,在線測試等操作。而教師可以進行在線注冊,在線登陸,修 改個人資料,教學管理,答疑管理,班級管理等操作。 關鍵詞:關鍵詞:B/S 模式,數(shù)據(jù)庫,C# ,IIS II AbstractAbstract The rapid development of internet, the traditional educational methods have failed to meet th
3、e needs of students. Online education system computer technology and multimedia technology with a new generation of education, focusing on the time and space, Online education is to enable more learners to share resources. C#+A this system through the realization of its students and teachers to buil
4、d a bridge sitting : Students can register online in a timely manner, online landing, revision of the personal information, class browser, the question here, online testing operations. Teachers can register online, online landing, revision of the personal information management teaching and coaching
5、 management, class management operation. Keywords: B/S Mode, Databases, C #, IIS III 目錄目錄 第 1 章 緒論.1 1.1 引言 .1 1.2 B/S 系統(tǒng).2 1.3 本文所做的工作 .3 第 2 章 系統(tǒng)總體設計.4 2.1 需求分析 .4 2.1.1 功能需求.4 2.1.2 性能需求 .4 2.2 系統(tǒng)總體 .4 2.2.1 系統(tǒng)模塊劃分.4 2.3 系統(tǒng)的流程設計 .5 第 3 章 數(shù)據(jù)庫邏輯結構.9 3.1 數(shù)據(jù)庫選擇 .9 3.2 數(shù)據(jù)庫和信息系統(tǒng) .10 3.3 數(shù)據(jù)庫設計的特點 .10 3.
6、4 數(shù)據(jù)庫表結構的詳細設計 .10 第 4 章 系統(tǒng)設計與實現(xiàn).15 4.1 數(shù)據(jù)訪問層 .15 4.2 商業(yè)邏輯層 .15 4.3 用戶界面層與核心代碼 .19 4.3.1 用戶登陸.19 4.3.2 用戶注冊.21 4.3.3 用戶操作界面.23 4.3.4 文件上傳界面.25 4.3.5 郵件發(fā)送界面.28 4.3.6 系統(tǒng)的其它核心代碼.30 結語與展望.33 致謝.34 參考文獻.35 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 1 第第 1 1 章章 緒論緒論 1.11.1 引言引言 在科學技術飛速發(fā)展的今天,Internet 逐漸走入到人們的生活當中,人們可以 在閑暇時盡情地遨游
7、在網(wǎng)絡中,而 Internet 又是以網(wǎng)站的形式體現(xiàn)出來的。通過網(wǎng) 站的訪問,人們可以進行電子郵件的發(fā)送、文件傳輸、遠程登陸、網(wǎng)上查詢、網(wǎng)上 交流,足不出戶便可知道外面的世界和最新的信息。 在這樣的信息時代中,用戶對信息的需求量、廣泛程度和時效性的要求日趨提 高,傳統(tǒng)的教育和管理受到了極大地沖擊。教育的方式、輔助手段和工具也發(fā)生著 日新月異的變化。 與傳統(tǒng)的教育相比,在線教育是一種全新的教育模式,它可以突破時間和空間 的限制,讓更多的學習者共享優(yōu)秀教育資源。在線教育既具有開放性,交互性,協(xié) 作性和自主性等特點,又具有異步性,實時性,生動性,集成性和大容量等優(yōu)勢。 因此在在線教育系統(tǒng)的建設中,單
8、純地構建各種功能單一的系統(tǒng)并不能完全滿足在 線教育建設的要求,只有那些對數(shù)據(jù)和信息進行了有效組織,整合了多種業(yè)務,為 用戶提供個性化服務的系統(tǒng)才能充分地發(fā)揮在線教育的作用。 在現(xiàn)代遠程教育的教學模式中,學習者是中心,教育資源和網(wǎng)絡技術要為學習 者(求知者)創(chuàng)造一個網(wǎng)上的學習環(huán)境,以便使他們能充分地發(fā)揮自主性和積極性, 學習知識,解決實際問題。 在線教育系統(tǒng)是教學管理領域中一個比較重要的系統(tǒng),它在學生與教師之間搭 起了一坐橋梁:學生可以及時進行在線注冊,在線登陸,修改個人資料,班級瀏覽, 加入等操作。而教師可以進行在線注冊,在線登陸,修改個人資料,教學管理,答 疑管理,班級管理等操作。 在線教育
9、是計算機技術和多媒體技術相結合的新一代教育方式。利用在線教育 突破了傳統(tǒng)教育在教育資源(師資、教材、實驗和演示設備)和教育方法(統(tǒng)一進 度、集中式和單向傳授等)方面的限制,使教育資源和教育方法不受時間和空間等 約束,而受教育者則可根據(jù)自己的學習水平和時間情況安排自己的學習計劃控制學 習進度,實現(xiàn)傳統(tǒng)教育無法做到的“個性化教育” 。因此在線教育是普及教育、繼續(xù) 教育及崗位培訓的一種十分有效的新型教育方式。計算機技術和網(wǎng)絡技術,特別是 Internet 的廣泛應用和普及,是促成在線教育方式形成和發(fā)展的根本原因之一。 在軟件制作過程中,對于靜態(tài)教學網(wǎng)頁的編寫使用了 word 來進行編寫,因為在高等
10、代數(shù)的教案中有大量的數(shù)字公式符號,在 Word2003 中可以直接對 html 文件進行編 排和修改。非常方便。同時學生和老師也可以同時登錄到系統(tǒng),進行實時交流。進 行實事互動,加強了系統(tǒng)的互動性。 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 2 在線教育系統(tǒng)是教學管理領域中一個比較重要的系統(tǒng),它在學生與教師之間搭 起了一坐橋梁:學生可以及時進行在線注冊,在線登陸,修改個人資料,班級瀏覽, 提問瀏覽,在線測試等操作。而教師可以進行在線注冊,在線登陸,修改個人資料, 教學管理,答疑管理,班級管理等操作 在線教育系統(tǒng)使用 ASP.NET+C# +SQL Server 2000 進行開發(fā),并在 II
11、S 5.0 上 進行發(fā)布。在開發(fā)過程中用到的關鍵技術有 ADO.NET 數(shù)據(jù)訪問技術,Cookie 編程技 術,動態(tài)菜單的腳本設計技術。在開發(fā)過程中嚴格遵守軟件工程思想,按照需求分 析,數(shù)據(jù)庫設計,概要設計,詳細設計,編碼,改進與性能優(yōu)化的步驟進行開發(fā)。 我們在學習中逐步了解在實際的軟件開發(fā)設計過程中如何遵循軟件工程的思想快速, 優(yōu)質(zhì)地開發(fā)軟件,使得開發(fā)出的軟件系統(tǒng)具有良好的擴展性,可維護性。 1.21.2 B/SB/S 系統(tǒng)系統(tǒng) BS 結構,即 BrowserServer(瀏覽器服務器)結構,就是只安裝維護一個 服務器(Server),而客戶端采用瀏覽器(Browse)運行軟件。它是隨著 I
12、nternet 技術 的興起,對 CS 結構的一種變化和改進。主要利用了不斷成熟的 WWW 瀏覽器技術, 結合多種 Script 語言(VBScript、JavaScript)和 ActiveX 技術,是一種全新的軟 件系統(tǒng)構造技術。 BS 三層體系結構采用三層客戶服務器結構,在數(shù)據(jù)管理層(Server)和用戶界 面層(Client)增加了一層結構,稱為中間件(Middleware),使整個體系結構成為三 層。三層結構是伴隨著中間件技術的成熟而興起的,核心概念是利用中間件將應用 分為表示層、業(yè)務邏輯層和數(shù)據(jù)存儲層三個不同的處理層次,如圖11所示。三個 層次的劃分是從邏輯上分的,具體的物理分法可
13、以有多種組合。中間件作為構造三 層結構應用系統(tǒng)的基礎平臺,提供了以下主要功能:負責客戶機與服務器、服務器 與服務器間的連接和通信;實現(xiàn)應用與數(shù)據(jù)庫的高效連接;提供一個三層結構應用 的開發(fā)、運行、部署和管理的平臺。這種三層結構在層與層之間相互獨立,任何一 層的改變不會影響其它層的功能。 CodeBehind 后臺代碼 A 顯示頁面 顯示層顯示層 邏輯層邏輯層 Business Layer Data Layer DB 圖 11 BS 三層體系結構 數(shù)據(jù)層數(shù)據(jù)層 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 3 在 BS 體系結構系統(tǒng)中,用戶通過瀏覽器向分布在網(wǎng)絡上的許多服務器發(fā)出請 求,服務器對瀏覽
14、器的請求進行處理,將用戶所需信息返回到瀏覽器。而其余如數(shù) 據(jù)請求、加工、結果返回以及動態(tài)網(wǎng)頁生成、對數(shù)據(jù)庫的訪問和應用程序的執(zhí)行等 工作全部由 Web Server 完成。隨著 Windows 將瀏覽器技術植入操作系統(tǒng)內(nèi)部,這種 結構已成為當今應用軟件的首選體系結構。顯然 BS 結構應用程序相對于傳統(tǒng)的 CS 結構應用程序是一個非常大的進步。 BS 結構的主要特點是分布性強、維護方便、開發(fā)簡單且共享性強、總體擁有 成本低。但數(shù)據(jù)安全性問題、對服務器要求過高、數(shù)據(jù)傳輸速度慢、軟件的個性化 特點明顯降低,這些缺點是有目共睹的,難以實現(xiàn)傳統(tǒng)模式下的特殊功能要求。例 如通過瀏覽器進行大量的數(shù)據(jù)輸入或進
15、行報表的應答、專用性打印輸出都比較困難 和不便。此外,實現(xiàn)復雜的應用構造有較大的困難。雖然可以用 ActiveX、Java 等 技術開發(fā)較為復雜的應用,但是相對于發(fā)展已非常成熟 CS 的一系列應用工具來說, 這些技術的開發(fā)復雜,并沒有完全成熟的技術工具供 使用。 1.31.3 本文所做的工作本文所做的工作 本論文將以 VS.NET 為制作工具,以 SQL Server 為數(shù)據(jù)庫設計工具來完成對基 于 B/S 模式的在線教育系統(tǒng)的設計與開發(fā)。 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 4 第第 2 2 章章 系統(tǒng)總體設計系統(tǒng)總體設計 2.12.1 需求分析需求分析 .1 功能需
16、求功能需求 通過對教育系統(tǒng)的分析,我們認識到一個完整的教育系統(tǒng)應該具有以下基本功 能: 表 2-1 主要功能圖及分析說明 序號功能模塊備注 1 注冊模塊提供用戶注冊信息 2 資源管理模塊提供用戶進行資料上傳與下載 3 信箱管理模塊對信件的實現(xiàn)單發(fā)、群發(fā)以及管理 4 查詢模塊對用戶進行數(shù)據(jù)庫查詢 .2 性能需求性能需求 本系統(tǒng)的主體是一所學校,其性能需求: 1、時間特性的要求: 登錄時間最大不超過 5 秒 平均時間在 13 秒以內(nèi) 搜索時間不超過 3 秒 平均在 1 秒內(nèi) 2、系統(tǒng)容量要求 靜態(tài)用戶(注冊用戶):1000 以上 動態(tài)用戶(在線用戶):800 以上 并發(fā)數(shù):100
17、2.22.2 系統(tǒng)總體系統(tǒng)總體 .1 系統(tǒng)模塊劃分系統(tǒng)模塊劃分 根據(jù)功能需求,我對本系統(tǒng)做了更進一步的細化,將其由 3 個總體模塊來統(tǒng)籌, 分別為學生模塊、教師模塊以及超級管理員模塊,在 3 個總體模塊中有分別存在有 不同的子模塊,來完成不同的功能,同時我們發(fā)現(xiàn)在子模塊中又存在相同的功能, 為了減輕冗余代碼,將在后臺代碼設計中使用類來解決。具體的模塊劃分與所要實 現(xiàn)的功能設計如表 2-2: 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 5 表 2-2 系統(tǒng)模塊劃分 序號功能模塊類別功能模塊備注 登錄、注冊模塊注冊個人信息、進行系統(tǒng)登錄 教室模塊進行在線答疑、作業(yè)上傳及編輯、 教學
18、資源下載、查看教室信息、申 請加入班級及瀏覽班級 收件箱模塊對本系統(tǒng)內(nèi)的用戶進行信件交流 注冊信息管理模 塊 編輯注冊信息 1 學生 教師查詢模塊對教師進行以姓名為關鍵字的查詢 登錄、注冊模塊同上 教學模塊進行在線答疑、學生作業(yè)下載及編 輯、教學資源下載、查看教室信息、 教室申請及取消、對申請加入班級 的同學進行審批 收件箱模塊實現(xiàn)對個人進行單發(fā)或?qū)Π嗉夁M行 群法 注冊信息管理模 塊 同上 2 教師 學生查詢模塊對同學進行以用戶名為關鍵字的查 詢 信件管理對用戶進行信息交流 教師管理編輯與教師相關的信息 教室管理對教室進行編輯 3 超級管理員 學生管理對學生進行編輯 2.32.3 系統(tǒng)的流程設
19、計系統(tǒng)的流程設計 流程設計在系統(tǒng)的實現(xiàn)中起到非常重要的引導作用,它展現(xiàn)的是各個模塊中數(shù) 據(jù)流的流向,根據(jù)模塊設計所畫的流程圖如下: 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 6 圖 2-1 學生用戶模塊的流程圖 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 7 圖 2-2 教師用戶模塊的流程圖 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 8 圖 2-3 超級管理員模塊的流程圖 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 9 第第 3 3 章章 數(shù)據(jù)庫邏輯結構數(shù)據(jù)庫邏輯結構 3.13.1 數(shù)據(jù)庫選擇數(shù)據(jù)庫選擇 在 Windows 操作系統(tǒng)中,Microsoft Access 和 Microsof
20、t SQL Server 是最常 見的數(shù)據(jù)庫,它們同時也應用于網(wǎng)絡程序應用系統(tǒng)。一般情況下,Microsoft Access 數(shù)據(jù)庫比較適合小型或家庭型的應用程序,而 Microsoft SQL Server 一般 比較適合大型的應用程序。下面以 Microsoft Access 2000 和 Microsoft SQL Server 2000 介紹這兩類數(shù)據(jù)庫。 1、Microsoft Access 數(shù)據(jù)庫 Access 2000 是 Microsoft 強大的桌面數(shù)據(jù)庫平臺的第六代產(chǎn)品,是 32 位 Access 的第三個版本。Microsoft Access 及其 Jet 數(shù)據(jù)庫引擎占據(jù)
21、了整個桌面數(shù)據(jù) 庫市場。 2、Microsoft SQL Server 數(shù)據(jù)庫 Microsoft SQL Server 2000 數(shù)據(jù)庫是一個多關系數(shù)據(jù)管理系統(tǒng)。它不僅是一 個完整的數(shù)據(jù)庫,而且具有強大的擴展性。它是 Windows 操作系統(tǒng)最為流行的數(shù)據(jù) 庫,比較適合小型、中型或大型應用程序的后臺數(shù)據(jù)庫。它也適用于電子商務、數(shù) 據(jù)倉庫和在線商業(yè)應用程序等。 3、Oracle 數(shù)據(jù)庫 Oracle 數(shù)據(jù)庫一般比較適合超大型的行業(yè)領域,如電信、移動、聯(lián)通、醫(yī)療保 險、郵政部門等。在行業(yè)領域,電信基本上使用 Oracle 數(shù)據(jù)庫和 Sybase 數(shù)據(jù)庫。 4、MySQL 數(shù)據(jù)庫 MySQL 數(shù)據(jù)
22、庫是一種非常特別的數(shù)據(jù)庫。它以 Web 形式來體現(xiàn),也是基于 Web 訪問方式的數(shù)據(jù)庫。和其他數(shù)據(jù)庫相比,MySQL 數(shù)據(jù)庫的最大特點是建立在 Internet 之上,用戶可以通過基于 Web 的查詢方式來訪問數(shù)據(jù)庫。MySQL 數(shù)據(jù)庫除 了運行在 Windows 操作系統(tǒng)上之外,還可以運行在 Linux 和 UNIX 操作系統(tǒng)上。 MySQL 數(shù)據(jù)庫一般采用的是客戶機/服務器體系結構。 數(shù)據(jù)庫設計(Database Design)是指對于一個給定的應用環(huán)境,構造最優(yōu)的數(shù) 據(jù)庫模式,建立數(shù)據(jù)庫及其應用系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的 應用需求(信息要求和處理要求) 。 在數(shù)據(jù)庫領域
23、內(nèi),常常把使用數(shù)據(jù)庫的各類系統(tǒng)統(tǒng)稱為數(shù)據(jù)庫應用系統(tǒng)。 本系統(tǒng)采用 SQL Server 2000 數(shù)據(jù)庫軟件來進行數(shù)據(jù)庫的設計,其具有以下優(yōu) 點: 1、結果響應快 一套全新的管理工具包以及與 Visual Studio 2005 和 Microsoft .NET 共同語 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 10 言運行 環(huán)境的緊密集成,使你在構建系統(tǒng)、排錯及操作應用系統(tǒng)時更快、更有效。 2、更好的決策支持 在數(shù)據(jù)整合、分析和報表領域功能全面的智能商務平臺,使你在采取行動和制 定更好決策時具備更敏銳的洞察能力。 3、值得信賴的平臺 系統(tǒng)固有的數(shù)據(jù)加密、默認安全設置以及強制口令策略功能使你
24、能夠以最高的 性能、最高的可用性和最高的安全性運行任何苛刻的應用系統(tǒng)。 3.23.2 數(shù)據(jù)庫和數(shù)據(jù)庫和信息系統(tǒng)信息系統(tǒng) 數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎,把信息系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織 起來,提供存儲、維護、檢索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時、準確地從 數(shù)據(jù)庫中獲得所需的信息。 數(shù)據(jù)庫是信息系統(tǒng)的各個部分能否緊密地結合在一起以及如何結合的關鍵所在; 數(shù)據(jù)庫設計是信息系統(tǒng)開發(fā)和建設的重要組成部分;數(shù)據(jù)庫設計人員應該具備的技 術和知識: 1、數(shù)據(jù)庫的基本知識和數(shù)據(jù)庫設計技術; 2、計算機科學的基礎知識和程序設計的方法和技巧; 3、軟件工程的原理和方法; 4、應用領域的知識; 3.33.3
25、 數(shù)據(jù)庫設計的特點數(shù)據(jù)庫設計的特點 數(shù)據(jù)庫建設是硬件、軟件和干件的結合,三分技術,七分管理,十二分基礎數(shù) 據(jù)。技術與管理的界面稱之為“干件” ;數(shù)據(jù)庫設計應該與應用系統(tǒng)設計相結合,結 構(數(shù)據(jù))設計是設計數(shù)據(jù)庫框架或數(shù)據(jù)庫結構。 行為(處理)設計:設計應用程序、事務處理等,結構和行為分離的設計。 傳統(tǒng)的軟件工程忽視對應用中數(shù)據(jù)語義的分析和抽象,只要有可能就盡量推遲 數(shù)據(jù)結構設計的決策早期的數(shù)據(jù)庫設計致力于數(shù)據(jù)模型和建模方法研究,忽視了對 行為的設計。 數(shù)據(jù)庫設計是項目開發(fā)中的系統(tǒng)設計中非常重要的一個關鍵環(huán)節(jié),其設計的好 壞,直接影響到項目的進程。 3.43.4 數(shù)據(jù)庫表結構的詳細設計數(shù)據(jù)庫表結
26、構的詳細設計 根據(jù)功能需要,如學生注冊,班級注冊,文件上傳等需要,我為該系統(tǒng)設計了 10 個數(shù)據(jù)表來完成對各個信息的記錄,具體的表設計如下: 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 11 表 3-1:Message(存儲用戶收件箱的內(nèi)容) 序號字段名字段類型說明備注 1ReceiverVarchar(250) 收件人 Varchar(250) 2SenderVarchar(250) 發(fā)件人不容許為空 3DataTimedatetime 發(fā)送時間系統(tǒng)自動寫入 4Contenttext 發(fā)送內(nèi)容不容許為空 5Totalint 記錄信件總數(shù)系統(tǒng)自動寫入 6TitleVarchar(250) 主題
27、不容許為空 7IDInt 編號自動寫入 8Habitusint 狀態(tài)利用此字段判斷 信件是否以讀 表 3-2:Application(存儲學生用戶申請班級的信息) 序號字段名字段類型說明備注 1IDInt 編號自動寫入 2AuthorVarchar(250) 提問人非空 3Contenttext 提問內(nèi)容非空 4TitleVarchar(250) 標題非空 5DataTimedatetime 發(fā)問時間系統(tǒng)自動寫入 6ClassVarchar(250) 發(fā)問所在的班級系統(tǒng)自動記錄 7TeacherVarchar(250) 回答人非空 系統(tǒng)自動 寫入 表 3-3:Question(存儲用戶的提問與
28、回答) 序號字段名字段類型說明備注 1UserNameVarchar(250) 用戶名不容許為空 2ClassVarchar(250) 要申請的班級不容許為空 3realNameVarchar(250) 真實姓名不容許為空 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 12 表 3-4:Recycle(存儲被用戶刪除信件的信息) 序號字段名字段類型說明備注 1ReceiverVarchar(250) 收件人系統(tǒng)自動寫入 2SenderVarchar(250) 發(fā)件人系統(tǒng)自動寫入 3DataTimedatetime 發(fā)送時間系統(tǒng)自動寫入 4Contenttext 發(fā)送內(nèi)容系統(tǒng)自動寫入 5Title
29、Varchar(250) 主題系統(tǒng)自動寫入 6IDInt 編號系統(tǒng)自動寫入 表 3-5:Room(存儲班級的信息) 序號字段名字段類型說明備注 1RoomNameVarchar(250) 教室名稱非空 惟一 2CreaterVarchar(250) 創(chuàng)建者非空系統(tǒng)自動 寫入 3CreDatedatetime 創(chuàng)建系統(tǒng)自動寫入 4InstituteVarchar(250) 所屬院系 5Populationint 班級人數(shù)系統(tǒng)自動記錄 6Descripttext 班級說明 7RoomdirVarchar(250) 班級資源文件的存 儲路徑 非空 表 3-6:Source(存儲資源信息) 序號字段名
30、字段類型說明備注 1RoomVarchar(250) 班級系統(tǒng)自動寫入 2SourceNameVarchar(250) 資源名稱非空 3TypeVarchar(250) 類別 (作業(yè)還是教 學資源) 系統(tǒng)判別 4DataTimedatetime 上傳時間系統(tǒng)自動寫入 5SourceOlderVarchar(250) 上傳人非空 6SrcVarchar(250) 存儲路徑非空系統(tǒng)自動 寫入 7StuIDInt 學號系統(tǒng)自動寫入 8IDInt 編號系統(tǒng)自動寫入 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 13 表 3-7:Supper(存儲超級管理員的信息) 序號字段名字段類型說明備注 1IDIn
31、t 系統(tǒng)自動記錄 2NameVarchar(250) 用戶名非空 3PassWordVarchar(250) 密碼非空 6 位 表 3-8:Student(存儲學生資料) 序號字段名字段類型說明備注 1StuIDint 學號非空 2UserNameVarchar(250) 用戶名非空 惟一 3RealNameVarchar(250) 真實姓名非空 4PassWordVarchar(250) 密碼非空 6 位 5TelephoneVarchar(250) 電話 6AddressVarchar(250) 住址 7EmailVarchar(250) 油箱非空 8InstituteVarchar(25
32、0) 院系 9Descriptiontext 個人說明 表 3-9:StudentRoom(存儲學生與班級的信息) 序號字段名字段類型說明備注 1StuNameVarchar(250) 學生姓名非空 系統(tǒng)自 動寫入 2UserNameVarchar(250) 學生用戶名非空 系統(tǒng)自 動寫入 3RoomNameVarchar(250) 教室名非空 系統(tǒng)自 動寫入 4UpFrequencyint 上傳次數(shù)系統(tǒng)自動記錄 5DownfrequencyInt 下載次數(shù)系統(tǒng)自動記錄 6StuIDInt 學號系統(tǒng)自動記錄 7EnterFrequencyInt 進入班級次數(shù)非空 系統(tǒng)自 動記錄 8EnterD
33、ataTimeInt 加入時間非空 系統(tǒng)自 動寫入 9CreaterVarchar(250) 創(chuàng)建者非空 系統(tǒng)自 動寫入 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 14 表 3-10:Teacher(存儲教師的信息) 序號字段名字段類型說明備注 1IDint 學號系統(tǒng)自動記錄 2NameVarchar(250) 教師名非空 唯一 3zhiwuVarchar(250) 職稱非空 4PassWordVarchar(250) 密碼非空 5 位 5TelephoneVarchar(250) 電話 6AddressVarchar(250) 住址 7EmailVarchar(250) 油箱非空 8Ins
34、tituteVarchar(250) 院系 9Descriptiontext 個人說明 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 15 第第 4 4 章章 系統(tǒng)設計與實現(xiàn)系統(tǒng)設計與實現(xiàn) 本系統(tǒng)是使用三層架構的軟件思想來實現(xiàn),其優(yōu)點是我們不必為了業(yè)務邏輯上 的微小變化而遷至整個程序的修改,只需要修改商業(yè)邏輯層中的一個函數(shù)或一個過 程;增強了代碼的可重用性;便于不同層次的開發(fā)人員之間的合作,只要遵循一定 的接口標準就可以進行并行開發(fā)了,最終只要將各個部分拼接到一起構成最終的應 用程序。所采用的工具為 Visual Studio.Net, Visual Studio.Net 是一套完整的 開發(fā)工具
35、集,用于生成 ASP.NET Web 應用程序、XML Web Services、桌面應用程序 和移動應用程序。Visual Basic、Visual C+、Visual C# 和 Visual J# 全都使用 相同的集成開發(fā)環(huán)境 (IDE),利用此 IDE 可以共享工具且有助于創(chuàng)建混合語言解決 方案。另外,這些語言利用了 .NET Framework 的功能,通過此框架可使用簡化 ASP Web 應用程序和 XML Web Services 開發(fā)的關鍵技術。 4.14.1 數(shù)據(jù)訪問層數(shù)據(jù)訪問層 這一層負責實際的數(shù)據(jù)存儲和檢索。調(diào)用 C#中的數(shù)據(jù)訪問類 System.Data.SqlClien
36、t;對數(shù)據(jù)的信息進行存儲、查詢及編輯操作。 4.24.2 商業(yè)邏輯層商業(yè)邏輯層 這一層是上下兩層的紐帶,它建立實際的數(shù)據(jù)庫連接,根據(jù)用戶的請求生成檢 索語句或更新數(shù)據(jù)庫,并把結果返回給前端界面顯示。這一層通常以動態(tài)鏈接庫的 形式存在,并注冊到服務器的注冊表中,它與前端界面通訊的接口符合某一特定的 組件標準(如 COM 組件) ??梢杂萌魏沃С诌@種標準的工具開發(fā)。包含在一個名為 sqlData.cs 的 C#類文件當中: using System; using System.Configuration; using System.Data; using System.Data.SqlClient
37、; namespace OfficeAuto / / sqlData 的摘要說明。 / 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 16 public class sqlData Public static string sqlconn=ConfigurationSettings.AppSettingssqlConn.ToString(); public void insertData(string cmdtext) SqlConnection sqlcon=new SqlConnection(sqlconn); SqlCommand sqlcom=new SqlCommand(cmdtext
38、,sqlcon); try sqlcon.Open(); sqlcom.ExecuteNonQuery(); catch(Exception ex) throw new Exception(ex.Message,ex); finally if(sqlcon.State=ConnectionState.Open) sqlcon.Close(); public SqlDataReader GetCount(string cmdtext) SqlConnection sqlcon=new SqlConnection(sqlconn); SqlCommand sqlcom=new SqlCommand
39、(cmdtext,sqlcon); SqlDataReader dr=null; try sqlcon.Open(); dr=sqlcom.ExecuteReader(); 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 17 catch(Exception ex) throw new Exception(ex.Message,ex); finally if(sqlcon.State=ConnectionState.Open) sqlcon.Close(); return dr; /對 scalar 進行測試 public int selData(string cmdtext) SqlConnec
40、tion sqlcon=new SqlConnection(sqlconn); SqlCommand sqlcom=new SqlCommand(cmdtext,sqlcon); sqlcon.Open(); int m=Convert.ToInt32(sqlcom.ExecuteScalar(); sqlcon.Close(); return(m); Public void ProceData(string sRoom,string sSourceName,string sType,string_ sSourceOlder,string sSrc ) SqlConnection sqlcon
41、=new SqlConnection(sqlconn); SqlCommand sqlcom=new SqlCommand(Pr_addFile,sqlcon); sqlcom.CommandType=CommandType.StoredProcedure; SqlParameter parameterFileName = new_ SqlParameter(SourceName,SqlDbType.VarChar,250); parameterFileName.Value = sSourceName; sqlcom.Parameters.Add(parameterFileName); 基于
42、B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 18 SqlParameter parameterRoom=new SqlParameter(Room,SqlDbType.VarChar,250); parameterRoom.Value=sRoom; sqlcom.Parameters.Add(parameterRoom); SqlParameter parameterType=new SqlParameter(Type,SqlDbType.VarChar,250); parameterType.Value=sType; sqlcom.Parameters.Add(parameterType); Sq
43、lParameter parameterOlder=new_ SqlParameter(SourceOlder,SqlDbType.VarChar,250); parameterOlder.Value=sSourceOlder; sqlcom.Parameters.Add(parameterOlder); SqlParameter parameterSrc=new SqlParameter(Src,SqlDbType.VarChar,500); parameterSrc.Value=sSrc; sqlcom.Parameters.Add(parameterSrc); try sqlcon.Op
44、en(); sqlcom.ExecuteNonQuery(); catch(Exception ex) throw new Exception(ex.Message,ex); finally if(sqlcon.State=ConnectionState.Open) sqlcon.Close(); public int selectData(string cmdtext) SqlConnection sqlcon=new SqlConnection(sqlconn); 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 19 SqlDataAdapter da=new SqlDataAdapter(c
45、mdtext,sqlcon); sqlcon.Open(); DataSet ds=new DataSet(); da.Fill(ds); sqlcon.Close(); DataTable dt=ds.Tables0; int m=dt.Rows.Count; return(m); public DataTable getData(string cmdtext) SqlConnection sqlcon=new SqlConnection(sqlconn); SqlDataAdapter da=new SqlDataAdapter(cmdtext,sqlcon); sqlcon.Open()
46、; DataSet ds=new DataSet(); da.Fill(ds); DataTable dt=ds.Tables0; sqlcon.Close(); return dt; 4.34.3 用戶界面層與核心代碼用戶界面層與核心代碼 .1 用戶登陸用戶登陸 通過對單選框的選擇來調(diào)用不同的數(shù)據(jù)表,進行數(shù)據(jù)判斷用戶的輸入是否有誤, 從而進入相對應的操作界面進行管理。一般情況下一個學生只能注冊一次,其用戶 名是由其學號來確定,保證唯一。 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 20 圖 4-1 用戶登陸界面 后臺核心代碼為: if(Student.Checked=true
47、) string cmdtext1=select * from Student where UserName=+userName.Text+and_ PassWord=+passWord.Text+; sqlData sqldata=new sqlData(); int n=sqldata.selectData(cmdtext1); if(n0) SessionteaUserName=userName.Text; SessionteaPassWord=passWord.Text; Response.Redirect(/student/main.aspx); else Response.Writ
48、e(alert(你的輸入有誤,請重新輸入!) ); else if(Teach.Checked=true) string cmdtext2=select * from Teach where Name=+userName.Text+ 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 21 and _ PassWord=+passWord.Text+; sqlData sqldata=new sqlData(); int n=sqldata.selectData(cmdtext2); if(n0) SessionteaUserName=userName.Text.Trim(); SessionteaP
49、assWord=passWord.Text.Trim(); Response.Redirect(/teach/main.aspx); else Response.Write(alert(你的輸入有誤,請重新輸入!) ); else if(supper.Checked=true) string cmdtext3=select * from Supper where Name=+userName.Text+ and PassWord=+passWord.Text+; sqlData sqldata=new sqlData(); int n=sqldata.selectData(cmdtext3);
50、 if(n0) SessionteaUserName=userName.Text.Trim(); SessionteaPassWord=passWord.Text.Trim(); Response.Redirect(/supper/Main.aspx); else Response.Write(alert(你的輸入有誤,請重新輸入!) ); .2 用戶注冊用戶注冊 在用戶注冊中,我使用了 3 個表來記錄注冊信息,其分別為表 3-7,表 3-8,表 基于 B/S 模式的在線教育系統(tǒng)設計與實現(xiàn) 22 3-10。 另外在實際操作中還設計到對用戶數(shù)據(jù)進行判斷,保證部分數(shù)據(jù)的準確性和唯
51、一性。同時在設計中我發(fā)現(xiàn)學生用戶和教師用戶的注冊有很大的類同性,后臺支持 代碼基本上一致。所以,我不再為教師用戶注冊界面做介紹,學生用戶界面如圖 4- 2: 圖 4-2 學生用戶注冊界面 后臺核心代碼為: String cmdtext1=select count(*) from Student where UserName_ =+userName.Text+ ; sqlData sqldata=new sqlData(); if(sqldata.selData(cmdtext1)0) Response.Write(alert(用戶名已注冊,請重新申請!) ); else try 基于 B/S
52、模式的在線教育系統(tǒng)設計與實現(xiàn) 23 String cmdtext=insert into_ Student(stuID,UserName,RealName,PassWord,Telephone,Address,Email,Institute,Des_cri ption) _ values(+stuID.Text+,+userName.Text+,+realName.Text+,+passWord.Text+, +Teleph_one.Text+,+Address.Text+,+Email.Text+,+Institute.Text+,+Descripti on.Text+); sqldata.insertData(cmdtext); SessionteaUserName=userName.Text; Response.Write(alert(注冊成功); Response.Write(document.location.href=student/main.aspx;); catc
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 合法的金融借款合同
- 出租房租賃合同協(xié)議
- 用于經(jīng)營的房屋租賃合同
- 大數(shù)據(jù)風控服務合同
- 汽車租賃書面合同書
- 聯(lián)保借款標準合同
- 2025小麥購銷合同樣本
- 個人借款合同合同英文范本
- 提升銷售技巧的培訓課程
- 2024年5G通信基礎設施建設合同
- 家庭園藝資材蘊藏商機
- 母嬰護理員題庫
- 老年人預防及控制養(yǎng)老機構院內(nèi)感染院內(nèi)感染基本知識
- SWITCH暗黑破壞神3超級金手指修改 版本號:2.7.6.90885
- 2023高考語文全國甲卷詩歌閱讀題晁補之《臨江仙 身外閑愁空滿眼》講評課件
- 數(shù)字營銷廣告技術行業(yè)rta巨量引擎實時接口
- 化工企業(yè)靜電安全檢查規(guī)程
- 線性系統(tǒng)理論鄭大鐘第二版
- 寧騷公共政策學完整版筆記
- 2023年湖南高速鐵路職業(yè)技術學院高職單招(數(shù)學)試題庫含答案解析
- 勇者斗惡龍9(DQ9)全任務攻略
評論
0/150
提交評論