![網(wǎng)絡(luò)工程專業(yè)畢業(yè)論文數(shù)字邏輯課程教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/16/17ecc653-807f-428b-aef8-8b0b6df8e94e/17ecc653-807f-428b-aef8-8b0b6df8e94e1.gif)
![網(wǎng)絡(luò)工程專業(yè)畢業(yè)論文數(shù)字邏輯課程教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/16/17ecc653-807f-428b-aef8-8b0b6df8e94e/17ecc653-807f-428b-aef8-8b0b6df8e94e2.gif)
![網(wǎng)絡(luò)工程專業(yè)畢業(yè)論文數(shù)字邏輯課程教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/16/17ecc653-807f-428b-aef8-8b0b6df8e94e/17ecc653-807f-428b-aef8-8b0b6df8e94e3.gif)
![網(wǎng)絡(luò)工程專業(yè)畢業(yè)論文數(shù)字邏輯課程教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn)_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/16/17ecc653-807f-428b-aef8-8b0b6df8e94e/17ecc653-807f-428b-aef8-8b0b6df8e94e4.gif)
![網(wǎng)絡(luò)工程專業(yè)畢業(yè)論文數(shù)字邏輯課程教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn)_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-10/16/17ecc653-807f-428b-aef8-8b0b6df8e94e/17ecc653-807f-428b-aef8-8b0b6df8e94e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、網(wǎng)絡(luò)工程專業(yè)畢業(yè)論文-數(shù)字邏輯課程教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn) 摘 要隨著科技的發(fā)展,信息傳播越來越迅速,伴隨著的是人類學(xué)習(xí)知識的周期越來越短,因此傳統(tǒng)的教學(xué)方式已經(jīng)不能滿足不同人們在不同地點(diǎn)以及不同時間進(jìn)行學(xué)習(xí)的需求,在這種情況下,教學(xué)網(wǎng)站誕生了,并且隨著教學(xué)網(wǎng)站的優(yōu)勢被越多的人們發(fā)現(xiàn),逐漸成為現(xiàn)代教育的新形勢。設(shè)計主要包括數(shù)字邏輯教學(xué)網(wǎng)站方案分析與規(guī)劃設(shè)計,介紹了整個設(shè)計過程中的思路和所用到的技術(shù),以及如何實(shí)現(xiàn)系統(tǒng)的各個功能。整個系統(tǒng)以JSP為編程語言,與SQLSERVER2000數(shù)據(jù)庫相結(jié)合,體現(xiàn)了交互性的原則,培養(yǎng)同學(xué)們的創(chuàng)新能力,充分調(diào)動學(xué)生的學(xué)習(xí)興趣。教學(xué)網(wǎng)站本身就是以網(wǎng)頁的形式出現(xiàn)的,因
2、此可以在互聯(lián)網(wǎng)上運(yùn)行,并且具備安全,快速,交互性強(qiáng)的特點(diǎn)。而學(xué)生就可以很方便的進(jìn)行一些和學(xué)習(xí)相關(guān)的操作,例如課件下載、在線提問等等。關(guān)鍵字:教學(xué);JSP;WEB;B/S結(jié)構(gòu)AbstractWith the development of technology, the knowledge of human learning become shorter and shorter, so traditional teaching methods can not meet different people in different locations and different time learni
3、ng needs in this case, the teaching site was born, and with the advantages of teaching Web site to be more and more people find that modern education has become the new situation. Teaching digital logic design including site analysis and program planning and design, introduced the idea of the design
4、 process and the use of technology, and how to implement the various system functions. JSP is the entire system programming language, combined with SQLSERVER2000 database, reflecting the principle of interactivity, develop the students ability to innovate, to fully mobilize the students interest in
5、learning. Teaching site itself is in the form of a web page, so you can run over the Internet, and have safe, fast, interactive features. The students can easily learn and some related operations, such as courseware download, online questions and moreKey words:teaching;JSP;WEB;B/S structure目 錄第1章 緒
6、論11.1 背景以及意義11.2 可行性解析1 技術(shù)可行性解析1 經(jīng)濟(jì)可行性解析1 操作可行性解析21.3 課題目標(biāo)與意義2第2章 技術(shù)簡介32.1 JSP技術(shù)簡介32.2 JSP工作原理32.3 JSP體系結(jié)構(gòu)32.4 JSP的特點(diǎn)42.5 SQL SERVER 2000 數(shù)據(jù)庫42.6 后臺數(shù)據(jù)庫連接5第3章 概要解析93.1 基本思路93.2 基本思想93.3 系統(tǒng)功能說明93.4 后臺數(shù)據(jù)庫設(shè)計10 Users登陸表10 Project 題目表11 Message留言表113.5 系統(tǒng)E-R圖12第4章 系統(tǒng)流程設(shè)計與分析134.1 處理流程分析13 系統(tǒng)流程圖13nsert流程14
7、數(shù)據(jù)update流程14 數(shù)據(jù)delete流程154.2 模塊設(shè)計16 管理員登錄16 課件資源管理16 學(xué)習(xí)作業(yè)管理16 互動交流管理17 下載作業(yè)17第5章 系統(tǒng)調(diào)試和測試195.1 程序調(diào)試195.2 程序的測試19 測試的重要性及目的19 測試的步驟20 測試的主要內(nèi)容20結(jié) 論21致 謝22參 考 文 獻(xiàn)23附 錄241第1章 緒 論1.1 背景以及意義網(wǎng)絡(luò)發(fā)展的如此快速,因此大多數(shù)的高校老師都放棄了自己的傳統(tǒng)的教學(xué)方式,轉(zhuǎn)而采用多媒體教學(xué)的形式,雖然這種教學(xué)方法可以極大的提高課堂學(xué)習(xí)效率,還能使同學(xué)們在輕松活躍的氣氛中學(xué)習(xí),但是這種教學(xué)形式對課下的時候效果并不理想,而課下的復(fù)習(xí)、預(yù)
8、習(xí)對于學(xué)生來說也是非常重要的,因此對于課下的教學(xué)勢必要改革。建設(shè)教學(xué)網(wǎng)站是其中改革的一項重要策略,同時也是當(dāng)前教學(xué)方式的主要輔助方式。教學(xué)網(wǎng)站不僅能夠彌補(bǔ)當(dāng)今教學(xué)方式中對課下教學(xué)的不足,也能使學(xué)生實(shí)現(xiàn)一個和老師的個性化交互的需要,因此建立教學(xué)網(wǎng)站對于教育部門,對于國家來說都是意義重大的。首先,從教學(xué)模式來看,好的教學(xué)網(wǎng)站可以更好的體現(xiàn)出“以學(xué)生為主,教師為輔”的現(xiàn)代教學(xué)模式,同時也徹底改變了傳統(tǒng)教育中“以課堂教學(xué)為中心,以書本為中心,以教師為中心”的“三中心”教學(xué)模式。 其次,從學(xué)生的角度來看,好的教學(xué)網(wǎng)站將會大大提高學(xué)生課下學(xué)習(xí)的幾率,它將成為課上學(xué)習(xí)的強(qiáng)有力的補(bǔ)充。最后,從老師和學(xué)生的結(jié)合
9、方面來看,教學(xué)網(wǎng)站一定會成為老師和學(xué)生溝通的一架橋梁,更能加深老師和學(xué)生之間的情感。因此對于現(xiàn)在教育來說建設(shè)好的教學(xué)網(wǎng)站將會是我國教育發(fā)展的有利轉(zhuǎn)折點(diǎn)。1.2 可行性解析 技術(shù)可行性解析數(shù)字邏輯教學(xué)網(wǎng)站的設(shè)計與實(shí)現(xiàn)有很多種語言選擇,我們選擇JSP語言,這個不僅是因為JSP語言的靈活性,而且現(xiàn)在用JSP語言做網(wǎng)站比較普遍,方便管理。根據(jù)以上分析JSP語言是非常適合我們的設(shè)計的。同樣的,數(shù)據(jù)庫也可以有很多選擇,但是我們選擇SQL Server 2000,SQL Server 2000數(shù)據(jù)庫是一個中小型數(shù)據(jù)庫,它操作簡單方便,并且SQL使用的語言是集定義語言DDL,數(shù)據(jù)操作語言DML和數(shù)據(jù)控制語言D
10、CL于一體的,所以可以獨(dú)立完成一系列的作用于數(shù)據(jù)庫的命令,這些都為我們的數(shù)據(jù)庫開發(fā)提供了最優(yōu)化的環(huán)境。由上分析可知,這些在技術(shù)上是可行的。 經(jīng)濟(jì)可行性解析由于設(shè)計主要是為學(xué)生的學(xué)習(xí)提供一個橋梁,而且只要搭建好環(huán)境就可以使系統(tǒng)運(yùn)行,并不需要大量的人力物力,并且在投入之后還可以減輕教師教學(xué)的壓力,因此在經(jīng)濟(jì)上完全可行。 操作可行性解析設(shè)計操作簡單,符合大眾人員的習(xí)慣和要求,數(shù)據(jù)錄入快捷,規(guī)范,安全,而且最重要的一點(diǎn)是它的靈活性很強(qiáng),極易擴(kuò)充。1.3 課題目標(biāo)與意義數(shù)字邏輯課程現(xiàn)在已經(jīng)成為計算機(jī)專業(yè)學(xué)生的必修課,他對于將來學(xué)生的動手能力有很強(qiáng)的積極作用,因此學(xué)好這門課程對于計算機(jī)專業(yè)的學(xué)生來說顯得尤
11、為重要。這門課程學(xué)好之后可以大幅度提高學(xué)生對于軟硬件方面的知識能力。課題所研究的數(shù)字邏輯網(wǎng)絡(luò)課程教學(xué)網(wǎng)站是基于網(wǎng)絡(luò)的網(wǎng)絡(luò)課程教學(xué)軟件。是web的一個擴(kuò)展,具有很強(qiáng)的交互性、開放性和極強(qiáng)的延展性。老師可以用它來制作一些非常有吸引力的課件調(diào)動學(xué)生的學(xué)習(xí)積極性,同時使得學(xué)生對于學(xué)習(xí)不再覺得無聊,也可以擺脫那種根深蒂固的對老師的懼怕感。教學(xué)網(wǎng)站能夠更好的提現(xiàn)以學(xué)生為中心的教學(xué)思想。第2章 技術(shù)簡介2.1 JSP技術(shù)簡介JSP Java Server Page服務(wù)器網(wǎng)頁 是從1998年開始出現(xiàn)的新技術(shù)。由Sun公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),是基于Java Servlet以及整個J
12、ava體系的web開發(fā)技術(shù)1 。JSP技術(shù)可以很簡便的生成動態(tài)網(wǎng)頁,同時具備一次編譯,處處運(yùn)行的特點(diǎn),也就是說具有很強(qiáng)的跨平臺特性。雖然我國對于JSP的使用還沒有外國普遍,但是隨著JSP的優(yōu)勢一一被大家發(fā)現(xiàn),很多網(wǎng)站已經(jīng)在使用JSP來編寫了,JSP已經(jīng)漸漸成為主流開發(fā)技術(shù)。2.2 JSP工作原理由于JSP是面向服務(wù)器的,所以它支持可以在任何瀏覽器上以網(wǎng)頁的形式來打開。當(dāng)系統(tǒng)遇到JSP頁面請求時,JSP將請求發(fā)送給服務(wù)端的相關(guān)插件,然后由這些插件來處理請求,有可能從數(shù)據(jù)看中查詢信息或者提取信息,然后這些插件再將信息返回給JSP,JSP將信息發(fā)送到JSP頁面,最后系統(tǒng)將安排好的JSP頁面以網(wǎng)頁的形
13、式返回給客戶端瀏覽器,這就是當(dāng)前網(wǎng)站的一個普遍的架構(gòu),三層模式。因為所有的操作都是在前臺也就是客戶端進(jìn)行,所以傳遞給客戶端的只有結(jié)果,這樣可以保證信息的安全性。2.3 JSP體系結(jié)構(gòu)根據(jù)現(xiàn)在JSP的一些開發(fā)標(biāo)準(zhǔn),可以有兩種開發(fā)模式:模式一:JSP+JavaBeans技術(shù)在這種模式中,JSP頁面獨(dú)自響應(yīng)請求并將處理結(jié)果返回給客戶。Bean處理所有數(shù)據(jù)訪問,JSP2。但是每當(dāng)在一些大型的系統(tǒng)當(dāng)中運(yùn)行時,頁面會被添加大量代碼或者腳本,,這就意味著在大型系統(tǒng)當(dāng)中或者對象邏輯比較繁瑣的時候,會變得很麻煩,大量代碼將使程序變得很復(fù)雜,對于前臺頁面設(shè)計人員來說幾乎就是一場災(zāi)難。鑒于以上發(fā)現(xiàn)模式一在小型應(yīng)用中
14、很普遍,但是不能滿足大型應(yīng)用。模式二:JSP+Servlet+JavaBeans技術(shù)Servlet技術(shù)是一種采用Java技術(shù)來實(shí)現(xiàn)CGI功能的一種技術(shù),Servlet技術(shù)非常適于服務(wù)器端的處理和編程,并且Servlet會長期駐留在內(nèi)存。如果從開發(fā)的角度看,第二種模式具有更直觀的頁面顯示,開發(fā)者分工也非常明確,因此大型系統(tǒng)的開發(fā)過程中,通常會采用第二種模式,模式二也更符合當(dāng)前流行的MVC結(jié)構(gòu) Model/view/controller ,其中Servlet對應(yīng)controller,處于控制者的位置,處理HTTP請求,負(fù)責(zé)生成JSP中使用的Beans組件或?qū)ο?,并判斷?yīng)將請求傳遞給哪個JSP等,J
15、SP對應(yīng)view,負(fù)責(zé)生成最終的動態(tài)網(wǎng)頁并返回給瀏覽器。而JavaBeans對應(yīng)的是Model,實(shí)現(xiàn)各個具體的應(yīng)用邏輯與功能3。2.4 JSP的特點(diǎn)(1)簡化的頁面生成技術(shù)。JSP的頁面和格式的設(shè)計使用的標(biāo)準(zhǔn)的6>HTML命令來處理的,在傳統(tǒng)的網(wǎng)頁HTML文件 *.htm,*.html 中加入腳本片段和JSP標(biāo)記 Tag ,構(gòu)成JSP網(wǎng)頁 *.jsp 用和HTML很相似的標(biāo)記加JAVA語言編寫的腳本來生成頁面的內(nèi)容,這樣使得頁面形式和系統(tǒng)內(nèi)容分隔開來,對一些大型系統(tǒng)工程開發(fā)的分工處理十分有利4。(2)與Java平臺有機(jī)集成。JSP開發(fā)技術(shù)是java平臺的一個重要組成,因此JSP編寫的頁面
16、完全可以使用任何有關(guān)JAVA的組件或者程序,這就能夠充分發(fā)揮本身的優(yōu)勢,同時JSP技術(shù)的延展性和安全性非常高,這就意味著用它可以編寫出高擴(kuò)展性的應(yīng)用程序。(3)服務(wù)器與硬件環(huán)境無關(guān)。在第二個特點(diǎn)中我們已經(jīng)說過JSP是java家族的成員,所以它可以適應(yīng)不同的平臺,也就是只要編寫了一個應(yīng)用程序,那么在不同的平臺中都可以正常使用。這是JSP相對于其他動態(tài)網(wǎng)頁的一個最大的優(yōu)勢。(4)功能可擴(kuò)展性。如同Microsoft的JSP技術(shù)可以通過ActiveX/COM組件來擴(kuò)展功能一樣,JSP可以通過JavaBean和EJB Enterprise JavaBean 以及自定義的標(biāo)記來擴(kuò)展功能。(5)JSP可以
17、通過JDBC,與Oracle、SQL ServerJSP提供了一些隱含對象。這些隱含對象可以在JSP頁面中直接使用,不必事先聲明。利用這個隱含對象,可以增強(qiáng)腳本的功能,簡化編程這些隱含對象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對象,可以使腳本功能更加強(qiáng)大,并且編程更加容易、方便5。2.5 SQL SERVER 2000 數(shù)據(jù)庫SQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個OS/2版本。SQL Server近年來不斷
18、更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用戶見面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。 SQL Server 特點(diǎn):1真正的體系結(jié)構(gòu)。 23豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計提供了更大的選擇余地。 4. SQL Server和WINDOWS NT、Microsoft office產(chǎn)品集成。567SQL Server數(shù)據(jù)倉庫功能6。2.6 后臺數(shù)據(jù)庫連接JDBC技術(shù)是Java DataBase Connectivity的縮寫,它是SUN公司提供的一種支持基本S
19、QL功能的通用的應(yīng)用程序接口 Application Programming Interface 。說JDBC是一處低級的API,是指它直接調(diào)用SQL命令,它比其他的一些數(shù)據(jù)庫連接API要容易使用些,但它同樣可以作為更高級的,用戶界面更友好的API或開發(fā)工具的基礎(chǔ)。很多可視化的Java開發(fā)工具,如Visual Age For Java、Visual Café、J+JDBC的面向用戶的類和包,直接將access database的表或視圖映射為Java類,程序員通過可視化工具直接對Java對象進(jìn)行操作,而真正需要的SQL調(diào)用則根據(jù)程序員發(fā)出的對對象的各種屬性、方法的操作來自動產(chǎn)生。另一
20、種使用JDBC API 的方式為,用戶程序可以提供一個界面(如菜單等)讓用戶選擇對數(shù)據(jù)庫進(jìn)行的操作,選中一個任務(wù)后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應(yīng)的SQL命令以及Java程序。通過這種方式,用戶可以完成對數(shù)據(jù)庫的操作,即使他并不了解SQL語法以及JDBC編程7。訪問數(shù)據(jù)庫結(jié)構(gòu)可分為三層,如圖3-1所示,客戶端程序想要調(diào)用數(shù)據(jù)庫數(shù)據(jù),首先需要經(jīng)過中間件,之后中間件會對調(diào)用數(shù)據(jù)庫的用戶進(jìn)行操作權(quán)限的認(rèn)證,只有通過認(rèn)證才能對數(shù)據(jù)庫進(jìn)行操作。圖3-1 利用中間件對數(shù)據(jù)庫進(jìn)行訪問的三層結(jié)構(gòu)中間件進(jìn)行對數(shù)據(jù)庫進(jìn)行操作的用戶的權(quán)限認(rèn)證并且封裝對數(shù)據(jù)庫的select,insert,de
21、lete,update等操作,而且中間件是存放在服務(wù)器端的,它從數(shù)據(jù)庫中調(diào)取用戶索要的內(nèi)容,并將內(nèi)容返回給客戶端所顯示的瀏覽器頁面當(dāng)中。當(dāng)用戶在瀏覽器端輸入用戶名和密碼的時候,可以通過加密算法傳輸給中間件,之后中間件進(jìn)行解密認(rèn)證,最后中間件從數(shù)據(jù)庫中調(diào)取數(shù)據(jù)返回給客戶端。這樣的操作流程使得系統(tǒng)更加安全。這次設(shè)計的系統(tǒng)就是才用這樣的三層結(jié)構(gòu)的模式8。模型如圖3-2所示。圖3-2 JDBC的三層模型因為“中間層”可以進(jìn)行訪問控制以及協(xié)同數(shù)據(jù)庫的更新,并且可以使用一個易用的高層API,這個API可以由“中間層”進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成低層的調(diào)用。所以在許多種情況下,三層模型可以提供更好的性能,系統(tǒng)中所采用的
22、就是此種模型9。通過上面發(fā)現(xiàn)JDBC可以看作Java程序和數(shù)據(jù)庫連接的一個橋梁。它提供了三項服務(wù)功能:一、與數(shù)據(jù)庫建立連接。二、將用戶的操作轉(zhuǎn)換成SQL語句并傳送給數(shù)據(jù)庫。三、獲得此SQL語句的執(zhí)行結(jié)果10。JDBC要和數(shù)據(jù)庫建立連接的一個前提條件就是它必須先取得鏈接此數(shù)據(jù)庫的JDBC驅(qū)動程序Class.forName 。并將JDBC的驅(qū)動程序加載到JVM(Java Virtual Machine)中,系統(tǒng)中利用s類內(nèi)的forName 靜態(tài)函數(shù)依據(jù)指定的類名稱載入JDBC的驅(qū)動程序。當(dāng)成功載入驅(qū)動程序之后,必須使用erManager類所提供的get Connection 靜態(tài)函數(shù)取得與數(shù)據(jù)庫之
23、間的連接對象。這個連接對象的類型為ection,必須通過它才能將SQL命令傳送給數(shù)據(jù)庫,執(zhí)行結(jié)果同樣也需要通過此連接對象來取得。當(dāng)取得連接對象后,還必須取得Statement對象才能對數(shù)據(jù)庫執(zhí)行SQL指令。Statement主要實(shí)現(xiàn)兩個功能:執(zhí)行SQL語句并且取得執(zhí)行結(jié)果。在ement的sql對象中執(zhí)行查詢或修改命令后傳回的是一個ResultSet 對象,Resultset對象提供了一個管道來存取SQL的執(zhí)行結(jié)果,方便通過它從數(shù)據(jù)庫中取出表格類型的數(shù)據(jù)。每個Statement對象只能產(chǎn)生一個ResultSet 對象11。數(shù)據(jù)庫的連接如圖3-3所示。圖3-3 數(shù)據(jù)庫連接流程數(shù)據(jù)庫的連接具體實(shí)現(xiàn)流
24、程如下:/建立JDBCODBC橋.JdbcOdbcDriver;/橋建立不成功時的錯誤處理catch ClassNotFoundException event /建立與數(shù)據(jù)庫的連接,并發(fā)送SQL查詢語句,將結(jié)果保存到rs對象中Con 建立JDBCODBC橋Sql SQL查詢語句執(zhí)行查詢Rs 返回結(jié)果/SQL出錯處理 catch SQLException e1 簡單地說,JDBC與數(shù)據(jù)庫建立連接、發(fā)送 SQL 語句并處理結(jié)果。: Connection con DriverManager.getConnection("jdbc:odbc:wombat","login&
25、quot;, "password"); Statement stmt con.createStatement(); ResultSet rs stmt.executeQuery("SELECT a, b, c FROM Table1"); while (rs.next() int x rs.getInt("a"); String s rs.getString("b"); float f rs.getFloat("c"); 第3章 概要解析3.1 基本思路盡可能的利用現(xiàn)有的軟硬件資源,以及網(wǎng)絡(luò)開發(fā)
26、技術(shù),建立數(shù)字邏輯課程教學(xué)網(wǎng)站,其基本目標(biāo)就是為網(wǎng)上教學(xué)提供一種交互性以及開放性、靈活性較強(qiáng)的學(xué)習(xí)環(huán)境。同時也豐富了網(wǎng)上教學(xué)的技術(shù)手段。鑒于這個目標(biāo),我們的教學(xué)網(wǎng)站必須堅持教學(xué)內(nèi)容和技術(shù)手段相結(jié)合,以學(xué)生的學(xué)習(xí)為大前提,不緊要滿足當(dāng)前教學(xué)技術(shù)的要求,還要為將來開發(fā)技術(shù)的發(fā)展提供良好的可擴(kuò)展性,盡可能好的適應(yīng)各類軟硬件的環(huán)境,適應(yīng)不同水平的用戶的需求;以盡可能少的投資獲得盡可能高的教學(xué)效益和經(jīng)濟(jì)性的要求。3.2 基本思想設(shè)計整體上采用三層BS結(jié)構(gòu):教學(xué)資源以及老師,學(xué)生注冊的基本資料還有一些選課的信息等等統(tǒng)一分類后放在后臺數(shù)據(jù)庫中,而用戶在客戶端操作一些圖形界面,比如注冊信息,全都在前臺以網(wǎng)頁的
27、形式出現(xiàn),更加直觀的呈現(xiàn)給客戶。當(dāng)這些信息經(jīng)過核對之后通過一個中間件將信息儲存在后臺數(shù)據(jù)庫中,并且可以返回客戶要求的信息。簡單來說,我們的數(shù)字邏輯教學(xué)網(wǎng)站,數(shù)據(jù)庫在后臺存儲信息,前臺以JSP語言編寫的網(wǎng)頁形式呈現(xiàn),而JDBC相當(dāng)于一架橋梁來鏈接前臺和后臺12。3.3 系統(tǒng)功能說明系統(tǒng)基于Internet,因此可以在互聯(lián)網(wǎng)上運(yùn)行。通過該系統(tǒng),教師可以方便的管理作業(yè)、管理課程、上傳作業(yè)等操作,學(xué)生可以方便地學(xué)習(xí)、互動交流、下載作業(yè)。系統(tǒng)提供完善的用戶管理及其他管理功能;具有可靠的安全性,各級用戶權(quán)限嚴(yán)格限制,每個用戶只能訪問他應(yīng)該訪問的內(nèi)容;用戶通過統(tǒng)一的Web界面訪問該系統(tǒng),將所有功能集成在We
28、b中。功能模塊圖3-4如下。圖3-4 功能模塊圖3.4 后臺數(shù)據(jù)庫設(shè)計任何表的主鍵ID都是自增長類型。 Users登陸表Id,username,姓名,loginname,loginpwd,logo 0,學(xué)生;1,教師 。圖3-5 Users登陸表列名數(shù)據(jù)類型長度允許空IDInt4否UsernameNvarchar50是LoginnameNvarchar50是LoginpwdNvarchar50是LogoInt4是 Project 題目表Id title題目,level等級,number分?jǐn)?shù),content1答案1, content2答案2, content3答案3,result正確答案。圖3-
29、6 Project 題目表列名數(shù)據(jù)類型長度允許空IdInt4否TitleNvarchar100是LeveNvarchar50是NumberNvarchar50是Content1Nvarchar100是Content2Nvarchar100是Content3Nvarchar100是ResultNvarchar50是 Message留言表Id,usersid,title標(biāo)題,content內(nèi)容,addtime添加時間,answer回復(fù)內(nèi)容,answertime回復(fù)時間。圖3-7 Message留言表列名數(shù)據(jù)類型長度允許空IDInt4否UseridInt4是TitleNvarchar50是Conte
30、ntNvarchar200是AddtimeNvarchar50是AnswerNvarchar200是AnswertimeNvarchar50是3.5 系統(tǒng)E-R圖圖3-8 系統(tǒng)E-R圖第4章 系統(tǒng)流程設(shè)計與分析4.1 處理流程分析 系統(tǒng)流程圖圖4-1 系統(tǒng)流程圖nsert流程添加信息時,編號字段由系統(tǒng)自動生成,且不能修改,其他信息由用戶輸入,之后對數(shù)據(jù)進(jìn)行合法判斷,合法則寫入保存至數(shù)據(jù)庫,不合法則重新輸入數(shù)據(jù)。數(shù)據(jù)增加流程圖如下。圖4-2數(shù)據(jù)insert流程圖 數(shù)據(jù)update流程在修改信息時,先選中一條待修改的記錄,然后直接輸入數(shù)據(jù),判斷合法性,合法則保存至數(shù)據(jù)庫,不合法重新輸入。數(shù)據(jù)修改流
31、程圖如圖4-3所示。圖4-3 數(shù)據(jù)update流程圖 數(shù)據(jù)delete流程當(dāng)用戶想要刪除一條記錄時,單擊刪除按鈕,會提示用戶是否確定刪除,然后刪除數(shù)據(jù)庫相關(guān)內(nèi)容。數(shù)據(jù)delete流程圖如圖4-4所示。圖4-4 數(shù)據(jù)delete流程圖4.2 模塊設(shè)計 管理員登錄當(dāng)系統(tǒng)登陸時,首先出現(xiàn)的是一個用戶權(quán)限登錄的界面, 它的主要功能是維護(hù)系統(tǒng)的安全性和完整性。擁有管理員權(quán)限的操作員能對其他操作員進(jìn)行相應(yīng)的權(quán)限設(shè)置,沒有權(quán)限的操作員不能對相應(yīng)的窗口進(jìn)行操作。如圖4-5所示。圖4-5 管理員登陸界面主要代碼見附錄一。 課件資源管理只有具有教師權(quán)限才能對課件資源進(jìn)行操作,界面截圖如圖4-6所示。圖4-6 課件
32、資源管理界面主要代碼見附錄二 學(xué)習(xí)作業(yè)管理只有教師權(quán)限的操作員才能進(jìn)行學(xué)習(xí)作業(yè)管理,包括對作業(yè)信息的添加,修改,刪除等功能,界面如圖4-7所示。圖4-7 學(xué)習(xí)作業(yè)管理界面主要代碼見附錄三。 互動交流管理只有具有教師權(quán)限對留言進(jìn)行操作,包括對留言的回復(fù)以及刪除功能。界面如圖4-8所示。圖4-8 互動交流管理界面主要代碼見附錄四。 下載作業(yè)學(xué)生可以通過系統(tǒng)進(jìn)行作業(yè)的下載,界面如圖4-9所示。圖4-9 下載作業(yè)界面主要代碼見附錄五。第5章 系統(tǒng)調(diào)試和測試5.1 程序調(diào)試設(shè)計過程中出現(xiàn)錯誤是肯定的,其中有一些語句語法的錯誤,這么錯誤會在系統(tǒng)運(yùn)行的時候自動提示,并請求糾正,所以這類錯誤比較容易發(fā)現(xiàn)和改正
33、。但是有另一類的錯誤是由于程序執(zhí)行過程中的錯誤操作或?qū)σ恍┕降倪壿嬪e誤導(dǎo)致的,這類錯誤隱蔽性很強(qiáng),不好排查,因此這類動態(tài)的錯誤很耗時耗力。5.2 程序的測試 測試的重要性及目的(1)測試的重要性對于軟件來說,不管采用什么樣的方式方法,錯誤是不可避免的。采用一些比較先進(jìn)的科技方法或者開發(fā)技術(shù),可以最大化的減少錯誤的出現(xiàn),但是仍然不能避免錯誤的出現(xiàn),因此我們需要進(jìn)行測試來發(fā)現(xiàn)這類比較隱蔽的錯誤。實(shí)際測試環(huán)境中,由于軟件測試的繁瑣性,很多測試員經(jīng)常敷衍了事,這正是由于測試人員對測試抱有一個錯誤的態(tài)度所導(dǎo)致的,主要有: 1 認(rèn)為測試其實(shí)很難取得進(jìn)展,不能給自己帶來一種完成任務(wù)后的成就感; 2 認(rèn)為以
34、發(fā)現(xiàn)軟件錯誤為目標(biāo)的測試本身就是對開發(fā)設(shè)計人員的一種否定;3 測試工作繁瑣枯燥,沒有興趣; 測試工作要求太高了,必須特別細(xì)心,時刻保持這種態(tài)度很難;認(rèn)為自己編寫的程序是完全正確的,認(rèn)為是沒有錯誤的,有錯誤也不會承認(rèn);這些觀點(diǎn)和態(tài)度對于測試來說是致命的,所以我們必須端正態(tài)度,認(rèn)真對待測試中的每一步,嚴(yán)謹(jǐn)?shù)臏y試一定會帶來高質(zhì)量的產(chǎn)品。(2)測試的目的 如果測試的目的主要是為了發(fā)現(xiàn)系統(tǒng)中的錯誤,那么我們就應(yīng)該對比較容易出錯的地方或者認(rèn)為哪里會出錯的地方進(jìn)行重點(diǎn)測試。因為我們要明白軟件測試其實(shí)是為了發(fā)現(xiàn)錯誤而執(zhí)行的程序,是為了證明程序有錯,只有當(dāng)一個個錯誤清晰的擺在自己的面前時才能證明自己的測試是成功
35、的。上面的觀點(diǎn)告訴我們,我們進(jìn)行測試主要是為了找到系統(tǒng)中存在的錯誤。但是這個觀點(diǎn)很有可能會誤導(dǎo)一些新人,使他們?nèi)蝿?wù)只有發(fā)現(xiàn)錯誤才意味著這次測試的成功,其實(shí)試試不五是這樣,測試并不單單是為了找到錯誤,我們可以通過找到的錯誤來進(jìn)行更深一步的分心,比如對錯誤產(chǎn)生的原因進(jìn)行分析等。這樣也可以幫助開發(fā)人員減少在今后工作當(dāng)中的失誤。與此同時,我們還能針對這次錯誤制定出有效的檢測方法,方便以后的測試。退一萬步講就算沒有發(fā)現(xiàn)錯誤,也不能說明這次測試是不成功的,因為完整的測試本身就是對系統(tǒng)的一種肯定 測試的步驟測試過程和開發(fā)過程很相似都需要按一定的步驟進(jìn)行,由于大型軟件系統(tǒng)通常由若干個子系統(tǒng)組成,同時每個子系統(tǒng)
36、又由若干個模塊組成。因此,大型軟件系統(tǒng)測試主要分為下面幾個方面:(1)模塊測試:模塊測試經(jīng)常發(fā)現(xiàn)的大部分是一些編譯時候的錯誤。(2)系統(tǒng)測試:系統(tǒng)測試經(jīng)常發(fā)現(xiàn)的大部分是軟件開發(fā)設(shè)計中的錯誤。(3)驗收測試:驗收測試經(jīng)常發(fā)現(xiàn)的大部分是系統(tǒng)需求說明中的錯誤10。 測試的主要內(nèi)容產(chǎn)品的測試主要分為以下幾個階段: (1)單元測試單元測試集中在檢查軟件設(shè)計的最小單位也就是模塊上,通過測試發(fā)現(xiàn)實(shí)現(xiàn)該模塊的實(shí)際功能與定義該模塊的功能所不符合的情況,以及編碼的錯誤。 (2)集成測試集成測試是將模塊按照設(shè)計要求組裝起來同時進(jìn)行測試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。如一個模塊與另一個模塊可能有由于疏忽的問題而造成
37、有害影響;把子功能組合起來可能不產(chǎn)生預(yù)期的主功能;個別可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)構(gòu)可能有錯誤等。 (3)確認(rèn)測試確認(rèn)測試的目的是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測試后,已經(jīng)按照設(shè)計把所有的模塊組裝成一個完整的軟件系統(tǒng),接口錯誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗證軟件的有效性,這就是確認(rèn)測試的任務(wù),即軟件的功能和性能與用戶所期待的一致。(4)系統(tǒng)測試軟件開發(fā)完成以后,最終還要與系統(tǒng)中其他部分配套運(yùn)行,進(jìn)行系統(tǒng)測試。包括恢復(fù)測試、安全測試、強(qiáng)度測試和性能測試等。 只對系統(tǒng)測試的話,需要從功能測試、強(qiáng)度測試及性能測試、安全測試幾方面考慮 。經(jīng)過上述的測試過
38、程對軟件進(jìn)行測試后,軟件基本滿足開發(fā)的要求,測試宣告結(jié)束。 結(jié) 論6薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論M.北京:高等教育出版社,2008年.34609Brown等.JSP編程指南(第二版)R.北京:電子工業(yè)出版社,2007年.1-268 10清宏計算機(jī)工作室.JSP編程技巧R.北京:機(jī)械工業(yè)出版社,2009年.1-410 11朱紅,司光亞.JSP Web編程指南R.北京:電子工業(yè)出版社,2007年.34-307 12賽奎春.JSP工程應(yīng)用與項目實(shí)踐J. 北京:機(jī)械工業(yè)出版社,2008年, 23-50附 錄附錄一、教師及管理員登陸主要代碼如下:package util;import java.sql.
39、*;public class DBConn static try Class.forName ".sqlserver.SQLServerDriver" ;/ Class.forName ".Driver" ; / Class.forName ".JdbcOdbcDriver" ; catch Exception ex ex.printStackTrace ; public static Connection getConn try Connection conn DriverManager.getConnection "jd
40、bc:microsoft: hshygl","sa","123" ;/ conn DriverManager.getConnection "jdbc: ;/ Connection conn DriverManager.getConnection "jdbc:odbc:temp" ; return conn; catch Exception ex ex.printStackTrace ; return null; public static void close Connection conn,Statement s
41、t,ResultSet rs if rs! null try rs.close ; catch SQLException ex if st! null try st.close ; catch Exception ex if conn! null try conn.close ; catch Exception ex 附錄二、課件資源管理主要代碼如下:package util;import pportedEncodingException;import leDateFormat;import ;public class Validate /* * 是否為數(shù)字和英文驗證 * */public i
42、nt getIntAndChar String str char c;int i;for i 0; i str.length ; i+ c str.charAt i ;if ! c '0' && c '9' | c 'a' && c 'z' | c 'A' && c 'Z' break; /判斷字符是否在某個區(qū)間if i str.length return -1; else return 0; /* * 是否為整數(shù)驗證 * */public int g
43、etInt String str char c;int i;for i 0; i str.length ; i+ c str.charAt i ;if ! c '0' && c '9' break; /判斷字符是否在某個區(qū)間if i str.length return -1; else return 0; /* * 是否為非法字符驗證 * */public boolean getLawlessChar String str boolean flag false;char c;for int i 0;i str.length ;i+ c str.c
44、harAt i ;switch c case ' ' : flag true; break;case ' ' : flag true; break;case '"' : flag true; break;case '&' : flag true; break;case ' ' : flag true; break; return flag; 附錄三、學(xué)習(xí)作業(yè)管理模塊主要代碼如下:package servlet;import ception;import tWriter;import leDateF
45、ormat;import ndar;import ;import jestDispatcher;import jletException;import j.HttpServlet;import j.HttpServletRequest;import j.HttpServletResponse;import util.Validate;import bean.InsertUpdateDelBean;public class AmountServlet extends HttpServlet /* * Constructor of the object. */public AmountServle
46、t super ; /* * Destruction of the servlet. */public void destroy super.destroy ; / Just puts "destroy" string in log/ Put your code here /* * The doGet method of the servlet. * * This method is called when a form has its tag value method equals to get. * * param request the request send by
47、 the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */public void doGet HttpServletRequest request, HttpServletResponse response throws ServletException, IOException doPost r
48、equest, response ; /* * The doPost method of the servlet. * * This method is called when a form has its tag value method equals to post. * * param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error
49、 occurred * throws IOException if an error occurred */public void doPost HttpServletRequest request, HttpServletResponse response throws ServletException, IOException response.setContentType "text/html;charset gb2312" ;request.setCharacterEncoding "gb2312" ;String id request.getP
50、arameter "id" ;String amount request.getParameter "amount" ;String sql "update users set amount amount+"+amount+" where id "+id;InsertUpdateDelBean ib new InsertUpdateDelBean ;ib.insertANDupdateANDdel sql ;sql "insert into payment usersid,name,price value
51、s "+id+", ',"+amount+" "ib.insertANDupdateANDdel sql ;request.setAttribute "message", "操作成功!" ;RequestDispatcher rd request.getRequestDispatcher "/admin/users_amount.jsp" ;rd.forward request,response ; package servlet;import ception;import y
52、List;import jestDispatcher;import jletException;import j.HttpServlet;import j.HttpServletRequest;import j.HttpServletResponse;import util.Validate;import bean.AllBean;import bean.InsertUpdateDelBean;import bean.SelectBean;public class BegindateServlet extends HttpServlet /* * Constructor of the obje
53、ct. */public BegindateServlet super ; /* * Destruction of the servlet. */public void destroy super.destroy ; / Just puts "destroy" string in log/ Put your code here /* * The doGet method of the servlet. * * This method is called when a form has its tag value method equals to get. * * param
54、 request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */public void doGet HttpServletRequest request, HttpServletResponse response throws ServletExc
55、eption, IOException doPost request, response ; /* * The doPost method of the servlet. * * This method is called when a form has its tag value method equals to post. * * param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */public v
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度網(wǎng)絡(luò)安全防護(hù)項目配合費(fèi)協(xié)議書
- 2025年度化妝品電商平臺物流配送服務(wù)合同-@-1
- 2025年度建筑工程合同電子簽名與加密技術(shù)應(yīng)用-@-1
- 2025年度建筑工程施工臨時用電合同-@-8
- 2025年度建筑施工機(jī)械租賃與綠色施工標(biāo)準(zhǔn)執(zhí)行協(xié)議
- 二零二五年度寧夏銀川二手房買賣合同備案及登記服務(wù)協(xié)議
- 2025年度旅游線路設(shè)計與推廣單項委托服務(wù)合同
- 洛陽經(jīng)濟(jì)適用房租賃合同簽訂指南(2025版)2篇
- 2025年度羊皮皮包設(shè)計與生產(chǎn)合同標(biāo)準(zhǔn)版
- 2025年度智慧城市建設(shè)合伙合作協(xié)議范本
- (2024)甘肅省公務(wù)員考試《行測》真題及答案解析
- 《STP營銷戰(zhàn)略概述》課件
- 急性胸痛患者的急救護(hù)理
- 企業(yè)資產(chǎn)管理培訓(xùn)
- 自然辯證法學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2024年4月27日浙江省事業(yè)單位招聘《職業(yè)能力傾向測驗》試題
- 物業(yè)管理服務(wù)應(yīng)急響應(yīng)方案
- 風(fēng)車的原理小班課件
- 物業(yè)保潔員勞動競賽理論知識考試題庫500題(含答案)
- 國家職業(yè)技術(shù)技能標(biāo)準(zhǔn) 4-07-07-01 洗衣師 勞社廳發(fā)20081號
- 六年級數(shù)學(xué)競賽試題及答案(六套)
評論
0/150
提交評論