




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
重慶郵電大學(xué)本科畢業(yè)設(shè)計(jì)(論文)重慶郵電大學(xué)本科畢業(yè)設(shè)計(jì)(論文)畢業(yè)論文聲明本人鄭重聲明:1.此畢業(yè)論文是本人在指導(dǎo)教師指導(dǎo)下獨(dú)立進(jìn)行研究取得的成果。除了特別加以標(biāo)注地方外,本文不包含他人或其它機(jī)構(gòu)已經(jīng)發(fā)表或撰寫過的研究成果。對本文研究做出重要貢獻(xiàn)的個(gè)人與集體均已在文中作了明確標(biāo)明。本人完全意識到本聲明的法律結(jié)果由本人承擔(dān)。2.本人完全了解學(xué)校、學(xué)院有關(guān)保留、使用學(xué)位論文的規(guī)定,同意學(xué)校與學(xué)院保留并向國家有關(guān)部門或機(jī)構(gòu)送交此論文的復(fù)印件和電子版,允許此文被查閱和借閱。本人授權(quán)大學(xué)學(xué)院可以將此文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本文。3.若在大學(xué)學(xué)院畢業(yè)論文審查小組復(fù)審中,發(fā)現(xiàn)本文有抄襲,一切后果均由本人承擔(dān),與畢業(yè)論文指導(dǎo)老師無關(guān)。4.本人所呈交的畢業(yè)論文,是在指導(dǎo)老師的指導(dǎo)下獨(dú)立進(jìn)行研究所取得的成果。論文中凡引用他人已經(jīng)發(fā)布或未發(fā)表的成果、數(shù)據(jù)、觀點(diǎn)等,均已明確注明出處。論文中已經(jīng)注明引用的內(nèi)容外,不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫過的研究成果。對本文的研究成果做出重要貢獻(xiàn)的個(gè)人和集體,均已在論文中已明確的方式標(biāo)明。學(xué)位論文作者(簽名):年月關(guān)于畢業(yè)論文使用授權(quán)的聲明本人在指導(dǎo)老師的指導(dǎo)下所完成的論文及相關(guān)的資料(包括圖紙、實(shí)驗(yàn)記錄、原始數(shù)據(jù)、實(shí)物照片、圖片、錄音帶、設(shè)計(jì)手稿等),知識產(chǎn)權(quán)歸屬華北電力大學(xué)。本人完全了解大學(xué)有關(guān)保存,使用畢業(yè)論文的規(guī)定。同意學(xué)校保存或向國家有關(guān)部門或機(jī)構(gòu)送交論文的紙質(zhì)版或電子版,允許論文被查閱或借閱。本人授權(quán)大學(xué)可以將本畢業(yè)論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用任何復(fù)制手段保存或編匯本畢業(yè)論文。如果發(fā)表相關(guān)成果,一定征得指導(dǎo)教師同意,且第一署名單位為大學(xué)。本人畢業(yè)后使用畢業(yè)論文或與該論文直接相關(guān)的學(xué)術(shù)論文或成果時(shí),第一署名單位仍然為大學(xué)。本人完全了解大學(xué)關(guān)于收集、保存、使用學(xué)位論文的規(guī)定,同意如下各項(xiàng)內(nèi)容:按照學(xué)校要求提交學(xué)位論文的印刷本和電子版本;學(xué)校有權(quán)保存學(xué)位論文的印刷本和電子版,并采用影印、縮印、掃描、數(shù)字化或其它手段保存或匯編本學(xué)位論文;學(xué)校有權(quán)提供目錄檢索以及提供本學(xué)位論文全文或者部分的閱覽服務(wù);學(xué)校有權(quán)按有關(guān)規(guī)定向國家有關(guān)部門或者機(jī)構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)大學(xué)可以將本學(xué)位論文的全部或部分內(nèi)容編入學(xué)校有關(guān)數(shù)據(jù)庫和收錄到《中國學(xué)位論文全文數(shù)據(jù)庫》進(jìn)行信息服務(wù)。在不以贏利為目的的前提下,學(xué)??梢赃m當(dāng)復(fù)制論文的部分或全部內(nèi)容用于學(xué)術(shù)活動(dòng)。論文作者簽名:日期:指導(dǎo)教師簽名:日期:重慶郵電大學(xué)畢業(yè)設(shè)計(jì)(論文)設(shè)計(jì)(論文)題目:基于JAVA的網(wǎng)絡(luò)教學(xué)系統(tǒng)摘要論文對項(xiàng)目的開發(fā)背景、開發(fā)環(huán)境、目的意義進(jìn)行闡述,然后針對課堂教學(xué)模式重點(diǎn)對各個(gè)功能模塊的實(shí)現(xiàn)方法作了詳細(xì)論述,在此基礎(chǔ)上提出了網(wǎng)絡(luò)教學(xué)系統(tǒng)的構(gòu)建設(shè)想,并對網(wǎng)絡(luò)教學(xué)系統(tǒng)的教學(xué)應(yīng)用研究作深入的分析研究,包括系統(tǒng)的理論支撐和系統(tǒng)的實(shí)施應(yīng)用方案,結(jié)合當(dāng)前計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫技術(shù)和網(wǎng)絡(luò)教學(xué)的評價(jià)特點(diǎn)。然后對開發(fā)環(huán)境以及系統(tǒng)模塊分別做出詳細(xì)介紹,系統(tǒng)采用SSH技術(shù)和MySQL數(shù)據(jù)庫技術(shù)結(jié)合MVC設(shè)計(jì)模式對系統(tǒng)進(jìn)行開發(fā)。論文主要從論壇答疑,自主選課,文件共享,教師審核等模塊介紹網(wǎng)絡(luò)教學(xué)系統(tǒng)系統(tǒng)。先對學(xué)生成長檔案袋管理系統(tǒng)的構(gòu)建作了詳細(xì)的分析和設(shè)計(jì),最終實(shí)現(xiàn)選課、審核、記錄、存儲、師生答疑等再現(xiàn)學(xué)生學(xué)習(xí)過程,實(shí)現(xiàn)學(xué)生、教師、共同參與學(xué)生學(xué)習(xí)過程的評價(jià)與監(jiān)督,使之成為優(yōu)化教學(xué)課堂的好幫手。網(wǎng)絡(luò)教學(xué)的研究與實(shí)現(xiàn),把各種多媒體信息(如聲音,文字,圖像,動(dòng)畫等)融為一體,向?qū)W生提供一個(gè)既豐富多彩、生動(dòng)活潑,又方便快捷的人機(jī)交互界面,使學(xué)生在學(xué)習(xí)過程中各個(gè)感官都能接受到教學(xué)的信息,對改善教學(xué)環(huán)境,提高教學(xué)質(zhì)量,改變傳統(tǒng)的教學(xué)模式都會起到積極創(chuàng)新的作用。論文在介紹系統(tǒng)的同時(shí)對各項(xiàng)開發(fā)技術(shù)均有較為詳細(xì)的介紹(JSP、AJAX、Struts2、Spring),能讓剛接觸java的讀者更快理解網(wǎng)絡(luò)教學(xué)系統(tǒng)的實(shí)現(xiàn)過程。關(guān)鍵詞網(wǎng)絡(luò)教學(xué)教學(xué)研究SSHMysql數(shù)據(jù)庫 IAbstractThearticlefirsttoprojectthedevelopmentbackground,thedevelopmentsituationohomeandabroad,expoundsthesignificanceandanalysis,thispaperputsforwardtheconsofnetworkteachingsystemideas,andnetworkteachingsystemoftheteachingapplicationfortheanalysisoftheresearch,includingthesystemtheorysupportandtheimplementatsystemsolutions,andcombiningthecurrentcomputernetworks,databasetechnologyandneteachingevaluationofcharacteristics,thenmakeadetailedintroductiontothedevelopmentenvironmentandthesystemmodulerespectively.thesystemadoptstheSSHtechnologyandMySQLdatabasetechnologyincombinationwithMVCdesignpatternonthesystemofdevelopment,firsttothestudents'growthmanagementsystemoftheconstructionoftheincreasinglyhasmadethedetailedanalysisanddesign,andthento\"qualitativeevaluation,independentstudy,bilateralreflection,teachingevaluation\"adaptationoftheclassroomteachingmodekeytoeachfunctionmoduleandtherealizationmethodofmakesdetailediscussion,andfinallyachieverecord,storage,reproducestudentslearningprocess,students,teachers,theparticipationofthestudents'learningprocessevaluationandsupervision,makeitgoodassistantoftheclassroomteaching.Researchandimplementationofnetworkteaching,allkindsofmultimediainformation(suchasvoice,text,images,animationandsoon)com.,toprovidestudentswitharichandcolorful,belivelyandvivid,andconvenientandswifthuman-computerinteractioninterface,makestudentallsensesreceiveinstructioninformationinthelearningprocess,toimprovetheteachingenvironment,toimprovethequalityofteaching,changethetraditionalteachingmodecanplaypositiveroleofinnovationBasedontheintroductionofsystemandthedevelopmenttechnologyareintroducedin(JSP,AJAX,Struts2,Spring),canletjustcontacttheJavareadertounderstandtherealizationprocessofthenetworkteachingsystemKeywordsNetworkteachingTeachingandresearchSSHMysql II 目錄摘要IAbstractII目錄1前言3項(xiàng)目背景3項(xiàng)目意義4第一章網(wǎng)絡(luò)教學(xué)系統(tǒng)應(yīng)用研究5第一節(jié)網(wǎng)絡(luò)教學(xué)的相關(guān)概要5一、網(wǎng)絡(luò)教學(xué)系統(tǒng)在教學(xué)中的作用5二、實(shí)施網(wǎng)絡(luò)教學(xué)的準(zhǔn)備工作5第二節(jié)本章小節(jié)6第二章網(wǎng)絡(luò)教學(xué)系統(tǒng)的開發(fā)技術(shù)研究7第一節(jié)JSP簡述7第二節(jié)AJAX原理8第三節(jié)Tomcat的概述9第四節(jié)MYSQL的概述10第五節(jié)Struts2工作原理10第六節(jié)Eclipse簡介11第七節(jié)本章小節(jié)12第三章網(wǎng)絡(luò)教學(xué)系統(tǒng)的分析與設(shè)計(jì)13第一節(jié)網(wǎng)絡(luò)教學(xué)系統(tǒng)的需求分析13第二節(jié)網(wǎng)絡(luò)教學(xué)系統(tǒng)可行性分析13一、經(jīng)濟(jì)可行性分析13二、技術(shù)可行性分析14第三節(jié)網(wǎng)絡(luò)教學(xué)系統(tǒng)的設(shè)計(jì)14一、網(wǎng)絡(luò)教學(xué)系統(tǒng)框架的設(shè)計(jì)14二、各模塊的功能設(shè)計(jì)15第四節(jié)本章小節(jié)21第四章網(wǎng)絡(luò)教學(xué)系統(tǒng)的實(shí)現(xiàn)22第一節(jié)主要功能模塊的實(shí)現(xiàn)22一、首頁22二、用戶注冊/登錄22三、個(gè)人中心23四、論壇答疑25第二節(jié)主要功能程序的實(shí)現(xiàn)27一、程序設(shè)計(jì)思想27二、數(shù)據(jù)庫連接的建立28三、注冊用戶30四、申請(審核)課程32五、發(fā)帖(回帖)34六、文件上傳35第三節(jié)本章小結(jié)37第五章系統(tǒng)測試38第一節(jié)系統(tǒng)測試的目的跟原則38第二節(jié)子系統(tǒng)測試39第三節(jié)本章小節(jié)40第六章總結(jié)與展望41第一節(jié)總結(jié)41第二節(jié)展望41致謝43參考文獻(xiàn)44附錄45附錄Ⅰ外文參考文獻(xiàn)(原文)45附錄Ⅱ外文參考文獻(xiàn)(譯文)47 前言項(xiàng)目背景在線學(xué)習(xí)系統(tǒng)是一個(gè)正在興起的應(yīng)用領(lǐng)域,主要利用網(wǎng)頁制作、數(shù)據(jù)庫等技術(shù)實(shí)現(xiàn)網(wǎng)上教學(xué)的實(shí)時(shí)性、交互性、動(dòng)態(tài)性。目前對于網(wǎng)上學(xué)習(xí)的模式以及其所涉及的技術(shù)仍有許多問題需要探討和解決。WorldWideWeb已成為Internet上最流行和最具潛力的信息查詢,被廣泛地用于資源共享和技術(shù)共享,而且這些技術(shù)在教育方面的潛力越來越明顯,尤其在開放的和遠(yuǎn)程的教學(xué)方面。網(wǎng)絡(luò)教學(xué)是利用多媒體技術(shù)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)等現(xiàn)代信息技術(shù)開展起來的一種新型教學(xué)形式。它使得廣大受教育者實(shí)現(xiàn)優(yōu)秀教育資源和教育方法不受時(shí)間和空間等約束的共享。網(wǎng)絡(luò)教學(xué)可以實(shí)現(xiàn)優(yōu)秀教育資源和教育方法不受時(shí)間和空間等約束的共享,受教育者根據(jù)自己的水平和時(shí)間情況安排自己的學(xué)習(xí)計(jì)劃和學(xué)習(xí)進(jìn)度,實(shí)現(xiàn)傳統(tǒng)教育無法做到的“個(gè)性化教育”。作為傳統(tǒng)教學(xué)的延伸,網(wǎng)絡(luò)信息化教學(xué)的作用正逐步被人們所重視,隨著網(wǎng)絡(luò)技術(shù)和多媒體技術(shù)的進(jìn)步,網(wǎng)絡(luò)信息化教學(xué)系統(tǒng)還會有更多的發(fā)展空間。本系統(tǒng)突破一般多媒體輔助教學(xué)工具的思想,目的是盡可能將現(xiàn)實(shí)的活生生的學(xué)習(xí)環(huán)境和方法應(yīng)用于網(wǎng)絡(luò)教學(xué)中,提高學(xué)生網(wǎng)上學(xué)習(xí)的興趣,從而真正提高網(wǎng)上學(xué)習(xí)質(zhì)量;同時(shí)本系統(tǒng)的總體框架是為建立多學(xué)科的通用的模塊化的網(wǎng)上學(xué)習(xí)平臺,為今后開展廣泛的網(wǎng)上教育提供技術(shù)基礎(chǔ)服務(wù)。第二節(jié)國內(nèi)外發(fā)展現(xiàn)狀目前,它的研究和應(yīng)用主要有兩種形式:一種是基于Web的軟件實(shí)現(xiàn)方式,在這種方式下,學(xué)生或教師只要有一臺連網(wǎng)的計(jì)算機(jī),就可以通過軟件進(jìn)行遠(yuǎn)距離教學(xué),不需要特殊的硬件,在這樣的系統(tǒng)中學(xué)生可以進(jìn)行學(xué)習(xí)、討論、等,學(xué)生和教師之間可以傳輸文字、圖形、聲音、圖像等各種信息;第二種形式是基于視頻會議系統(tǒng)的實(shí)現(xiàn)方式,它除了需要第一種方式中的各種軟件支持以外,還需要特殊的硬件,使學(xué)生和教師可以相互實(shí)時(shí)看到和聽到對方,同時(shí)也可以充分利用視頻會議系統(tǒng)所提供的特殊功能。遠(yuǎn)程教學(xué)從研究以個(gè)別化學(xué)習(xí)為主的自主學(xué)習(xí)和適應(yīng)性學(xué)習(xí),到以小組為主的協(xié)作學(xué)習(xí)與合作學(xué)習(xí),以及今天人們更為關(guān)注的多元智能理論和混合型學(xué)習(xí),其中任何一種學(xué)習(xí)方式的引用均對教育和遠(yuǎn)程教育的發(fā)展起著不同的推動(dòng)作用。目前遠(yuǎn)程教學(xué)具體內(nèi)容可以歸結(jié)為以下幾個(gè)層面:關(guān)注合作學(xué)習(xí)基于數(shù)據(jù)倉庫支持合作學(xué)習(xí)的智能教學(xué)專家系統(tǒng)。評價(jià)測試通過分析學(xué)科材料和測檢結(jié)果提供學(xué)習(xí)意見的概念圖模型項(xiàng)目意義本課題研究的目的在于在傳統(tǒng)的課堂式教學(xué)下學(xué)習(xí)存在著很多的缺點(diǎn):如:享受到最優(yōu)秀老師服務(wù)的只能是少數(shù)人;不能隨時(shí)隨地、靈活有效的、個(gè)人掌握學(xué)習(xí)主動(dòng)權(quán)。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)與技術(shù)日漸成熟,計(jì)算機(jī)應(yīng)用的普及,計(jì)算機(jī)已進(jìn)入人類社會生活的各個(gè)領(lǐng)域,并發(fā)揮著越來越重要的作用,越來越多的學(xué)員選擇網(wǎng)上在線學(xué)習(xí)。在線學(xué)習(xí)提供最優(yōu)秀的教育資源傳統(tǒng)授課方式中,真正能享受到最優(yōu)秀老師服務(wù)的只能是少數(shù)人,而通過在線學(xué)習(xí)提供的視頻學(xué)習(xí),任何人都可以輕松享受到優(yōu)秀老師提供的教學(xué)服務(wù),在線學(xué)習(xí)系統(tǒng)整合各領(lǐng)域最優(yōu)秀的教學(xué)視頻,可以讓你接受的第一流的教育。在線教學(xué)不受時(shí)間的限制,并且可以隨時(shí)隨地在可以上網(wǎng)的地方參與學(xué)習(xí)。網(wǎng)絡(luò)教學(xué)系統(tǒng)可以實(shí)現(xiàn)對學(xué)生過程性學(xué)習(xí)情況的詳細(xì)記錄,而且這些記錄內(nèi)容沒有特定的標(biāo)準(zhǔn)要求,只要是學(xué)生喜歡的作品都可以上傳到系統(tǒng)中進(jìn)行保存,通過本項(xiàng)目可以有效的提高學(xué)生的學(xué)習(xí)興趣,促進(jìn)學(xué)生自主學(xué)習(xí),成為優(yōu)化教學(xué)模式、提高教學(xué)質(zhì)量的一個(gè)好幫手。第一章網(wǎng)絡(luò)教學(xué)系統(tǒng)應(yīng)用研究第一節(jié)網(wǎng)絡(luò)教學(xué)的相關(guān)概要在多媒體輔助課堂教學(xué)環(huán)境下,以注重“質(zhì)性評價(jià)、自主學(xué)習(xí)、雙邊反思、網(wǎng)絡(luò)教學(xué)的教學(xué)模式來輔助教學(xué),以主張“讓學(xué)生主動(dòng)學(xué)習(xí),學(xué)會學(xué)習(xí)”的主體教育理論和質(zhì)性課程評價(jià)理論、現(xiàn)代教學(xué)論等教育理論為依據(jù),另外反思性學(xué)習(xí)理論認(rèn)為:教和學(xué)是一個(gè)需要不斷重復(fù)檢查、反省和調(diào)整的持續(xù)過程。因此筆者認(rèn)為運(yùn)用網(wǎng)絡(luò)教學(xué)實(shí)際教學(xué)中可以描述學(xué)生的學(xué)習(xí)過程,記錄學(xué)生的學(xué)業(yè)成長,有助于客觀、正確的引導(dǎo)學(xué)生的學(xué)習(xí)。這種評價(jià)融入課程教學(xué)之中,其一體化可以促使學(xué)生主動(dòng)學(xué)習(xí)、小組合作學(xué)習(xí),完成任務(wù)。在實(shí)際教學(xué)中,創(chuàng)造性地實(shí)施成長檔案袋評價(jià)具有簡、便、廉、驗(yàn)的特點(diǎn),能夠達(dá)到多、快、好、省的效果[3]。這種評價(jià)不僅具有傳統(tǒng)意義上的區(qū)分和評判功能,更有助于及時(shí)調(diào)整和改進(jìn)教學(xué),促使學(xué)生學(xué)業(yè)進(jìn)步,完成特定學(xué)習(xí)任務(wù)。一、網(wǎng)絡(luò)教學(xué)系統(tǒng)在教學(xué)中的作用網(wǎng)絡(luò)教學(xué)系統(tǒng)是一整套提供遠(yuǎn)程教學(xué)服務(wù)的系統(tǒng)軟件,合理有效地利用學(xué)科教學(xué)資源,為實(shí)施全方位的現(xiàn)代遠(yuǎn)程教學(xué)提供服務(wù),它將網(wǎng)絡(luò)課件與學(xué)校的遠(yuǎn)程教學(xué)服務(wù)進(jìn)行了有機(jī)的集成。網(wǎng)絡(luò)教學(xué)系統(tǒng)不僅是先進(jìn)計(jì)算機(jī)科學(xué)和技術(shù)水平的體現(xiàn),更重要的是要符合現(xiàn)代化教育的一般規(guī)律,能夠?yàn)檫h(yuǎn)程教育提供一個(gè)真正高效的現(xiàn)代化教育手段。網(wǎng)上教學(xué)不僅僅是將教學(xué)材料在網(wǎng)上發(fā)布,而更多的是學(xué)生與教師之間、學(xué)生與學(xué)生之間的充分溝通與交流,由于遠(yuǎn)程教學(xué)教師與學(xué)生之間在空間上的分離,這種溝通與交流就顯得尤為重要,另外,傳統(tǒng)教學(xué)過程中一些保證教學(xué)質(zhì)量的關(guān)鍵環(huán)節(jié),如作業(yè)、考試、圖書館、筆記記錄等,都需要一些專用的工具來支持,而現(xiàn)有Internet技術(shù)并沒有提供這些工具,因此需要進(jìn)行工具開發(fā)。此外網(wǎng)上交互式的程序設(shè)計(jì),是一般非計(jì)算機(jī)專業(yè)教師所難以做到的,因此迫切需要一套網(wǎng)上的教學(xué)支持平臺,為教師在網(wǎng)上實(shí)施教學(xué)提供全面的工具支持,屏蔽程序設(shè)計(jì)的復(fù)雜性,使得教師能夠集中精力于教學(xué),也使得網(wǎng)上教學(xué)從簡單的教學(xué)信息發(fā)布變成一個(gè)充滿交互與交流的虛擬學(xué)習(xí)社區(qū)。二、實(shí)施網(wǎng)絡(luò)教學(xué)的準(zhǔn)備工作確保教學(xué)目標(biāo)和學(xué)習(xí)目標(biāo)相一致。向?qū)W生介紹網(wǎng)絡(luò)教學(xué)的理念。必須向?qū)W生講清楚網(wǎng)絡(luò)教學(xué)的概念,也可向?qū)W生展示系統(tǒng)使用。在這個(gè)階段指引學(xué)生將注意力轉(zhuǎn)向網(wǎng)絡(luò)教學(xué)的主要方面,即作為一個(gè)學(xué)習(xí)工具使用。關(guān)注其他感興趣的團(tuán)體。確保學(xué)校負(fù)責(zé)人關(guān)注你的這種新的教學(xué)方式。教師和管理者需要向?qū)W生講明網(wǎng)絡(luò)教學(xué)是怎樣工作的,以及它相比傳統(tǒng)教學(xué)的優(yōu)越性。第二節(jié)本章小節(jié)本章為論文正文第一章,主要介紹了網(wǎng)絡(luò)教育系統(tǒng)的主要作用,以及開發(fā)該系統(tǒng)所需要的前期準(zhǔn)備工作,強(qiáng)調(diào)本系統(tǒng)以“簡、便、廉、驗(yàn)”為思想以“多、快、好、省”的效果為最終目標(biāo)進(jìn)行系統(tǒng)開發(fā)。為后續(xù)真正代碼實(shí)現(xiàn)做好基礎(chǔ)。
第二章網(wǎng)絡(luò)教學(xué)系統(tǒng)的開發(fā)技術(shù)研究綜合各方面的考慮,系統(tǒng)選擇采用Java、JSP、struts2、JDBC、spring、javascript等技術(shù)來開發(fā)本網(wǎng)絡(luò)教學(xué)系統(tǒng)。該系統(tǒng)為三層B/S結(jié)構(gòu)模式,采用MySQL5.0作為后臺數(shù)據(jù)庫,充分利用Java技術(shù)的優(yōu)勢,使得系統(tǒng)穩(wěn)定高效。并在局部地區(qū)采用AJAX實(shí)現(xiàn)實(shí)時(shí)更新。下面將對系統(tǒng)所用到的相關(guān)技術(shù)的概況和優(yōu)勢作簡單的敘述,以增加讀者對系統(tǒng)開發(fā)環(huán)境的了解。第一節(jié)JSP簡述JavaServerPagesTM(JSP)技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁面提供了一個(gè)簡捷而快速的方法。JSP技術(shù)的設(shè)計(jì)目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開發(fā)工具共同工作。[5]在萬維網(wǎng)短暫的歷史中,它已經(jīng)從一個(gè)大部分顯示靜態(tài)信息的網(wǎng)絡(luò)演化到對股票進(jìn)行交易和進(jìn)行購書操作的一個(gè)基礎(chǔ)設(shè)施。在各種各樣的應(yīng)用程序中,對于可能使用的基于Web的客戶端,看上去沒有任何限制。[6]基于瀏覽器客戶端的應(yīng)用程序比傳統(tǒng)的基于客戶機(jī)/服務(wù)器的應(yīng)用程序有幾個(gè)好處。這些好處包括幾乎沒有限制的客戶端訪問和極其簡化的應(yīng)用程序部署和管理(要更新一個(gè)應(yīng)用程序,管理人員只需要更改一個(gè)基于服務(wù)器的程序,而不是成千上萬的安裝在客戶端的應(yīng)用程序)。[7]這樣,軟件工業(yè)正迅速地向建造基于瀏覽器客戶端的多層次應(yīng)用程序邁進(jìn)。很顯然,目前所需要的是一個(gè)業(yè)界范圍內(nèi)的創(chuàng)建動(dòng)態(tài)內(nèi)容頁面的解決方案。這個(gè)方案將解決當(dāng)前方案所受到的限制,即:能夠在任何Web或應(yīng)用程序服務(wù)器上運(yùn)行;將應(yīng)用程序邏輯和頁面顯示分離;能夠快速地開發(fā)和測試;簡化開發(fā)基于Web的交互式應(yīng)用程序的程。在JavaServerPages(JSP)技術(shù)就是被設(shè)計(jì)用來滿足這樣的要求的。JSP規(guī)范是Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開發(fā)工具供應(yīng)商間廣泛合作的結(jié)果。太陽微系統(tǒng)公司(SunMicrosystemsInc.)開發(fā)出這個(gè)規(guī)范來整合和平衡已經(jīng)存在的對Java編程環(huán)境(例如,JavaServlet和JavaBeansTM)進(jìn)行支持的技術(shù)和工具。其結(jié)果是產(chǎn)生了一種新的、開發(fā)基于Web應(yīng)用程序的方法,給予使用基于組件應(yīng)用邏輯的頁面設(shè)計(jì)者以強(qiáng)大的功能。[8]JSP技術(shù)在多個(gè)方面加速了動(dòng)態(tài)Web頁面的開發(fā),使用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容(內(nèi)容是根據(jù)請求來變化的)。生成內(nèi)容的邏輯被封裝在標(biāo)識和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識和Beans中,那么其他人,如Web管理人員和頁面設(shè)計(jì)者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且擴(kuò)展到能夠支持企業(yè)級的分布式應(yīng)用。[10]第二節(jié)AJAX原理Ajax這個(gè)概念的最早提出者JesseJamesGarrett認(rèn)為:Ajax是AsynchronousJavaScriptandXML的縮寫。Ajax并不是一門新的語言或技術(shù),它實(shí)際上是幾項(xiàng)技術(shù)按一定的方式組合在一在同共的協(xié)作中發(fā)揮各自的作用,它包括:使用XHTML和CSS標(biāo)準(zhǔn)化呈現(xiàn);使用DOM實(shí)現(xiàn)動(dòng)態(tài)顯示和交互;使用XML和XSLT進(jìn)行數(shù)據(jù)交換與處理;使用XMLHttpRequest進(jìn)行異步數(shù)據(jù)讀取;最后用JavaScript綁定和處理所有數(shù)據(jù)。Ajax的工作原理相當(dāng)于在用戶和服務(wù)器之間加了—個(gè)中間層,使用戶操作與服務(wù)器響應(yīng)異步化。并不是所有的用戶請求都提交給服務(wù)器,像—些數(shù)據(jù)驗(yàn)證和數(shù)據(jù)處理等都交給Ajax引擎自己來做,只有確定需要從服務(wù)器讀取新數(shù)據(jù)時(shí)再由Ajax引擎代為向服務(wù)器提交請求。在舊的交互方式中,由用戶觸發(fā)一個(gè)HTTP請求到服務(wù)器,服務(wù)器對其進(jìn)行處理后再返回一個(gè)新的HTHL頁到客戶端,每當(dāng)服務(wù)器處理客戶端提交的請求時(shí),客戶都只能空閑等待,并且哪怕只是一次很小的交互、只需從服務(wù)器端得到很簡單的一個(gè)數(shù)據(jù),都要返回一個(gè)完整的HTML頁,而用戶每次都要浪費(fèi)時(shí)間和帶寬去重新讀取整個(gè)頁面。Ajax的一個(gè)最大的特點(diǎn)是無需刷新頁面便可向服務(wù)器傳輸或讀寫數(shù)據(jù)(又稱無刷新更新頁面),這一特點(diǎn)主要得益于XMLHTTP組件XMLHTTPRequest對象。這樣就可以向再發(fā)桌面應(yīng)用程序只同服務(wù)器進(jìn)行數(shù)據(jù)層面的交換,而不用每次都刷新界面也不用每次將數(shù)據(jù)處理的工作提交給服務(wù)器來做,這樣即減輕了服務(wù)器的負(fù)擔(dān)又加快了響應(yīng)速度、縮短了用戶等候時(shí)間。Ajax的原理簡單來說通過XmlHttpRequest對象來向服務(wù)器發(fā)異步請求,從服務(wù)器獲得數(shù)據(jù),然后用javascript來操作DOM而更新頁面。這其中最關(guān)鍵的一步就是從服務(wù)器獲得請求數(shù)據(jù)。要清楚這個(gè)過程和原理,我們必須對XMLHttpRequest有所了解。XMLHttpRequest是ajax的核心機(jī)制,它是在IE5中首先引入的,是一種支持異步請求的技術(shù)。簡單的說,也就是javascript可以及時(shí)向服務(wù)器提出請求和處理響應(yīng),而不阻塞用戶。達(dá)到無刷新的效果。第三節(jié)Tomcat的概述自從JSP發(fā)布之后,推出了各式各樣的JSP引擎。ApacheGroup在完成GNUJSP1.0的開發(fā)以后,開始考慮在SUN的JSWDK基礎(chǔ)上開發(fā)一個(gè)可以直接提供Web服務(wù)的JSP服務(wù)器,當(dāng)然同時(shí)也支持Servlet,這樣Tomcat就誕生了。Tomcat是jakarta項(xiàng)目中的一個(gè)重要的子項(xiàng)目,其被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的java產(chǎn)品,同時(shí)它又是sun公司官方推薦的servlet和jsp容器,因此其越來越多的受到軟件公司和開發(fā)人員的喜愛。servlet和jsp的最新規(guī)范都可以在tomcat的新版本中得到實(shí)現(xiàn)。其次,Tomcat是完全免費(fèi)的軟件,任何人都可以從互聯(lián)網(wǎng)上自由地下載。Tomcat與Apache的組合相當(dāng)完美。Tomcat6.0最新支持Servlet2.4和JSP2.0,因?yàn)門omcat技術(shù)先進(jìn)、性能穩(wěn)定、Tomcat服務(wù)器是由一系列可配置的組件構(gòu)成,其核心組件是CatalinaServlet容器,它是所有其他Tomcat組件的頂層容器。Tomcat的組件可以ATALINA_HOME>/conf/server.xml文件中進(jìn)行配置,每個(gè)Tomcat的組件在server.xml文件中對應(yīng)一種配置元素。以下代碼以XML的形式展示了各種Tomcat組件之間的關(guān)系:<Server><Service><Connector/><Engine><Host><Context></Context></Host></Engine></Service></Server>Tomcat的目錄為:tomcat|binTomcat:存放啟動(dòng)和關(guān)閉tomcat腳本;|confTomcat:存放不同的配置文件(server.xml和web.xml);|doc:存放Tomcat文檔;|lib/japser/common:存放Tomcat運(yùn)行需要的庫文件(JARS);|logs:存放Tomcat執(zhí)行時(shí)的LOG文件;|src:存放Tomcat的源代碼;|webapps:Tomcat的主要Web發(fā)布目錄(包括應(yīng)用程序示例);|work:存放jsp編譯后產(chǎn)生的class文件;第四節(jié)MYSQL的概述MySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),MySQL數(shù)據(jù)庫系統(tǒng)使用最常用的數(shù)據(jù)庫管理語言--結(jié)構(gòu)化查詢語言(SQL)進(jìn)行數(shù)據(jù)庫管理。由于MySQL是開放源代碼的,因此任何人都可以在GeneralPublicLicense的許可下下載并根據(jù)個(gè)性化的需要對其進(jìn)行修改。MySQL因?yàn)槠渌俣?、可靠性和適應(yīng)性而備受關(guān)注,大多數(shù)人都認(rèn)為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。它使用系統(tǒng)核心提供的多線程機(jī)制提供完全的多線程運(yùn)行模式,提供了面向C、C++、Eiffel、Java、Perl、PHP、Python以及Tcl等編程語言的編程接口(APIs),支持多種字段類型并且提供了完整的操作符支持查詢中的SELECT和WHERE操作。時(shí)至今日,很多大型的網(wǎng)站也用到MySQL數(shù)據(jù)庫,它的發(fā)展前景是非常光明的,它由MySQLAB開發(fā)、發(fā)布和支持。MySQLAB是一家基于MySQL開發(fā)人員的商業(yè)公司,是一家使用了一種成功的商業(yè)模式來結(jié)合開源價(jià)值和方法論的第二代開源公司。MySQL是MySQLAB的注冊商標(biāo),MySQL是一個(gè)快速的、多線程、多用戶和健壯的SQL數(shù)據(jù)庫服務(wù)器。MySQL服務(wù)器支持關(guān)鍵任務(wù)、重負(fù)載生產(chǎn)系統(tǒng)的使用,也可以將它嵌入到一個(gè)大配置的軟件中去。MySQL是一個(gè)數(shù)據(jù)庫管理系統(tǒng),一個(gè)結(jié)構(gòu)化的數(shù)據(jù)集合。它可以是從一個(gè)簡單的銷售表到一個(gè)美術(shù)館、或者一個(gè)社團(tuán)網(wǎng)絡(luò)的龐大的信息集合。如果要添加、訪問和處理存儲在一個(gè)計(jì)算機(jī)數(shù)據(jù)庫中的數(shù)據(jù),你就需要一個(gè)像MySQL這樣的數(shù)據(jù)庫管理系統(tǒng)。第五節(jié)Struts2工作原理struts2是struts1和Webwork結(jié)合的產(chǎn)物。一個(gè)請求在Struts2框架中的處理分為以下幾個(gè)步驟:客戶端發(fā)出一個(gè)指向servlet容器的請求(tomcat);這個(gè)請求會經(jīng)過圖中的幾個(gè)過濾器,最后會到達(dá)FilterDispatcher過濾器。過濾器FilterDispatcher是struts2框架的心臟。在web容器啟動(dòng)時(shí),struts2框架會自動(dòng)加載配置文件里相關(guān)參數(shù),并轉(zhuǎn)換成相應(yīng)的類。如果找到需要調(diào)用的Action,過濾器會把請求的處理交給ActionProxy。ActionProxy創(chuàng)建一個(gè)ActionInvocation的實(shí)例。ActionInvocation實(shí)例使用命名模式來調(diào)用,ActionInvocation初始化時(shí),根據(jù)配置,加載Action相關(guān)的所有Interceptor。通過ActionInvocation.invoke方法調(diào)用Action實(shí)現(xiàn)時(shí),執(zhí)行Interceptor。一旦Action執(zhí)行完畢,ActionInvocation負(fù)責(zé)根據(jù)struts.xml中的配置找到對應(yīng)的返回結(jié)果第六節(jié)Eclipse簡介Eclipse是一種可擴(kuò)展的開放源代碼IDE。2001年11月,IBM公司捐出價(jià)值4,000萬美元的源代碼組建了Eclipse聯(lián)盟,并由該聯(lián)盟負(fù)責(zé)這種工具的后續(xù)開發(fā)。集成開發(fā)環(huán)境(IDE)經(jīng)常將其應(yīng)用范圍限定在“開發(fā)、構(gòu)建和調(diào)試”的周期之中。為了幫助集成開發(fā)環(huán)境(IDE)克服目前的局限性,業(yè)界廠商合作創(chuàng)建了Eclipse平臺。Eclipse允許在同一IDE中集成來自不同供應(yīng)商的工具,并實(shí)現(xiàn)了工具之間的互操作性,從而顯著改變了項(xiàng)目工作流程,使開發(fā)者可以專注在實(shí)際的嵌入式目標(biāo)上。[16]Eclipse的最大特點(diǎn)是它能接受由Java開發(fā)者自己編寫的開放源代碼插件,這類似于微軟公司的VisualStudio和Sun微系統(tǒng)公司的NetBeans平臺。Eclipse為工具開發(fā)商提供了更好的靈活性,使他們能更好地控制自己的軟件技術(shù)。Eclipse聯(lián)盟已經(jīng)宣布將在2004年中期發(fā)布其3.0版軟件。這是一款非常受歡迎的java開發(fā)工具,這國內(nèi)的用戶越來越多,實(shí)際上實(shí)用它java開發(fā)人員是最多的。第七節(jié)本章小節(jié)本章根據(jù)第一章為基礎(chǔ),確定實(shí)際系統(tǒng)開發(fā)中需要使用的相關(guān)技術(shù)和開發(fā)環(huán)境。由于本系統(tǒng)為B/S模式,對于幾項(xiàng)主要技術(shù)進(jìn)行了較為通俗的解釋。主要涉及到JSP、AJAX、TOMACT、MYSQL、Struts2等web技術(shù)。同時(shí)介紹了開發(fā)環(huán)境與開發(fā)工具Eclipse。
第三章網(wǎng)絡(luò)教學(xué)系統(tǒng)的分析與設(shè)計(jì)第一節(jié)網(wǎng)絡(luò)教學(xué)系統(tǒng)的需求分析基于傳統(tǒng)教學(xué)方式的種種問題和我國新課程改革的需要和注重過程性評價(jià)的提倡,網(wǎng)絡(luò)教學(xué)成了重點(diǎn)推薦的可廣泛推行的評價(jià)方式之一。為了更確切大家對網(wǎng)絡(luò)教學(xué)的需求態(tài)度,我對教師、學(xué)生和家長對于學(xué)校實(shí)施成長檔案袋的態(tài)度進(jìn)行了抽樣調(diào)查,結(jié)果如表4.1所示。從調(diào)查情況看,教師、學(xué)生和家長的積極態(tài)度表明網(wǎng)絡(luò)教學(xué)這一新生事物得到了普遍的認(rèn)可。表3.1教師、學(xué)生、家長對成長檔案袋評價(jià)的態(tài)度調(diào)查表調(diào)查對象及人數(shù)調(diào)查對象及人數(shù)態(tài)度所占比例教師(10人)沒有必要12%有必要56%很有必要32%學(xué)生(30人)不喜歡6%比較喜歡14%一直都很喜歡80%家長(10人)反對無無所謂8%第二節(jié)網(wǎng)絡(luò)教學(xué)系統(tǒng)可行性分析可行性分析主要是需要關(guān)注經(jīng)濟(jì)效益和技術(shù)可行性可行性,下面就經(jīng)濟(jì)和技術(shù)這兩方面進(jìn)行簡單的分析:一、經(jīng)濟(jì)可行性分析對于經(jīng)濟(jì)主要包括設(shè)備費(fèi)用、維護(hù)費(fèi)用、人員費(fèi)用等,在設(shè)備方面,目前大多數(shù)中小學(xué)都建立了校園網(wǎng),擁有網(wǎng)絡(luò)實(shí)驗(yàn)室基地,因此設(shè)備問題已經(jīng)不是問題,維護(hù)費(fèi)主要是提供系統(tǒng)更新費(fèi)用,更新工作可由在本校的信息技術(shù)教師或?qū)W校專職網(wǎng)絡(luò)技術(shù)人員進(jìn)行,這樣可以減少開支??傮w來說,建立學(xué)生成長檔案袋管理系統(tǒng)的經(jīng)濟(jì)費(fèi)用不會過于昂貴,一般的學(xué)校都能承擔(dān),而且可以減少紙質(zhì)檔案袋存在的種種問題,提高經(jīng)濟(jì)效益。二、技術(shù)可行性分析只要時(shí)間和資源不加限制,所有項(xiàng)目在理論上都是可行的。但項(xiàng)目開發(fā)總是始終受制于資源和開發(fā)時(shí)間。為確保本系統(tǒng)的開發(fā)能夠順利進(jìn)行。應(yīng)該在正式開展前對系統(tǒng)開發(fā)的可行性進(jìn)行仔細(xì)而謹(jǐn)慎的評估。就運(yùn)行環(huán)境而言,我的個(gè)人電腦提供了足夠的硬件資源和軟件資源來支持系統(tǒng)的運(yùn)行。就開發(fā)所需的工具軟件及技術(shù)而言,目前用于軟件開發(fā)的工具有很多,功能強(qiáng)大且齊全。而相關(guān)資料從我校的圖書館和互聯(lián)網(wǎng)上很容易得到且內(nèi)容豐富。開發(fā)時(shí)間,大約三個(gè)月的時(shí)間,雖然對于JSP開發(fā),我還缺乏經(jīng)驗(yàn),但只要通過努力,在規(guī)定時(shí)間內(nèi)完成開發(fā)任務(wù)是可以做到的。目前,本人開發(fā)環(huán)境是:AMD2600+CPU,320G硬盤空間,2G內(nèi)存,Windows7操作系統(tǒng),TOMCAT7.0,這樣的計(jì)算機(jī)系統(tǒng)對于應(yīng)用軟件的開發(fā)來說是可行的。從上述分析可以清晰的看出開發(fā)學(xué)生成長檔案袋管理系統(tǒng)的各種技術(shù)已經(jīng)相當(dāng)成熟,所以技術(shù)不是問題。第三節(jié)網(wǎng)絡(luò)教學(xué)系統(tǒng)的設(shè)計(jì)一、網(wǎng)絡(luò)教學(xué)系統(tǒng)框架的設(shè)計(jì)網(wǎng)絡(luò)教學(xué)的最大優(yōu)勢是向教師和學(xué)生展示出一個(gè)真實(shí)、豐富的學(xué)習(xí)過程,與傳統(tǒng)的教學(xué)模式相比更能說明學(xué)生知道什么和能夠做什么。網(wǎng)絡(luò)教學(xué)系統(tǒng)比傳統(tǒng)的教學(xué)凡是更靈活,因?yàn)槎嗝襟w為呈現(xiàn)作品提供了可修改的架構(gòu),表現(xiàn)了專業(yè)的活力。如果設(shè)計(jì)合理,它可以展示學(xué)生思考能力和解決問題的能力、所使用的策略和過程性技能及知識的建構(gòu)。除此之外,它還可以表明學(xué)生的持續(xù)力、努力以及意愿的改變情況。其中對各個(gè)模塊的簡要功能描述如下:學(xué)生模塊:主要是學(xué)生個(gè)人空間,功能包括學(xué)習(xí)日志、申請課程、發(fā)出提問、共享作品、公告欄等,學(xué)生通過賬號登陸后可以提出問題、查看成績、上傳作品、修改個(gè)人信息、評論、瀏覽信息等,本模塊主要是為學(xué)生個(gè)人提供一個(gè)暢所欲言的平臺。教師模塊:主要是教師對所在班級學(xué)生的管理,功能包括個(gè)人信息、學(xué)生管理、管理學(xué)生檔案、公告管理、審核申請、回答學(xué)生疑問等,其中各個(gè)功能模塊下又包括相應(yīng)的子功能,總的來說本模塊是提供給教師錄入/查看/管理學(xué)生的相關(guān)信息。管理員模塊:管理員是整個(gè)系統(tǒng)的核心管理人物,他可以控制整個(gè)系統(tǒng),主要功能包括個(gè)人信息、教師管理、管理員設(shè)置、信息查詢、其他設(shè)置、系統(tǒng)信息,其中各個(gè)功能模塊又有其相應(yīng)的子功能,本模塊主要是系統(tǒng)管理員對系統(tǒng)相關(guān)信息。對系統(tǒng)整體結(jié)構(gòu)的設(shè)計(jì)是數(shù)據(jù)庫管理系統(tǒng)開發(fā)的起點(diǎn),這也是整個(gè)系統(tǒng)開發(fā)過程中非常關(guān)鍵的一步,它是決定著開發(fā)的成敗。在設(shè)計(jì)時(shí),應(yīng)進(jìn)行充分的分析,決定整個(gè)系統(tǒng)應(yīng)具備的功能,并創(chuàng)建系統(tǒng)功能模塊結(jié)構(gòu)。二、各模塊的功能設(shè)計(jì)1、用戶模塊用戶包括未注冊的路人、注冊的學(xué)生、老師、管理員的權(quán)限功能的實(shí)現(xiàn)和劃分的用戶模塊。未注冊的用戶登陸本系統(tǒng)只能瀏覽本系統(tǒng)的新聞資訊,或者是瀏覽論壇中的帖子。注冊成功的學(xué)生、老師用戶登陸成功之后除了享有路人所有的權(quán)限之外還可以下載視頻、課件。進(jìn)入論壇之后還可以發(fā)帖,提出自己的問題,也可以針對某個(gè)問題回復(fù)別人提出來的問題,和其他的人一起溝通。管理員是權(quán)限最大的用戶,可以對本系統(tǒng)中所有的資源進(jìn)行管理,包括用戶的管理,管理員有權(quán)注銷不合法的用戶;主頁面的新聞,管理員可以發(fā)布新聞、撤消新聞;論壇中帖子的管理,管理員有權(quán)對含有不健康或者是不合法的內(nèi)容的帖子進(jìn)行撤消。2、文件上傳模塊本系統(tǒng)涉及的文件主要包括課件資源:在后臺管理界面中設(shè)置“資料管理”按鈕,點(diǎn)擊“上傳文件”可以在自己的主機(jī)或網(wǎng)絡(luò)上選擇要上傳的文件資料,這里一次可以上傳一個(gè)或多首文件,同時(shí)記錄文件路徑保存在數(shù)據(jù)庫中方便進(jìn)行查詢。3、答疑模塊(1)提出問題登陸的學(xué)生用戶可以向老師提問,當(dāng)學(xué)生遇到方向性的問題,可以向有關(guān)的老師提問。每個(gè)老師都有教授的課程以及介紹,學(xué)生可以通過了解老師所擅長的科目來向他提問。當(dāng)老師解決了學(xué)生提出的問題后,學(xué)生登陸時(shí)將列出所有解決的問題。(2)解決問題登陸的老師用戶登陸可以瀏覽之前學(xué)生所提出的所有問題和解決的問題,老師可以解決未處理的問題。4、公告模塊在首頁的公告區(qū)域顯示管理員發(fā)布的公告信息,公告信息實(shí)時(shí)更新主要顯示的是數(shù)據(jù)庫中的公告表中的數(shù)據(jù)資源。5、BBS論壇模塊用戶登陸首先進(jìn)入論壇的首頁,在首頁是顯示的所有用戶發(fā)表的主貼信息,該頁面主要是分頁顯示數(shù)據(jù)庫中的主帖信息了內(nèi)容,包括發(fā)帖人頭像、主題、發(fā)表時(shí)間、點(diǎn)擊數(shù)等等,可以點(diǎn)擊某個(gè)主貼的主題鏈接到該貼的所有跟帖信息,注冊的用戶還可以發(fā)表主題、回復(fù)主貼。達(dá)到與其他老師或者同學(xué)交流的功能。然后該頁面也提供用戶登陸和注冊的功能,主要對于那些路人觀看之后想發(fā)表自己的想法的人提供便利,在從帖的頁面主要是分頁顯示某個(gè)主帖的從帖信息,同時(shí)也包括用戶登陸和注冊的功能。6、后臺管理模塊后臺管理是最重要的一塊,后臺的管理功能的實(shí)現(xiàn),管理員登陸之后,可以對數(shù)據(jù)庫中的所有信息進(jìn)行管理,本模塊的功能模塊由下圖所示:后臺管理后臺管理用戶管理公告管理資源管理論壇管理圖3.1后臺管理功能模塊圖用戶的管理管理員有權(quán)對該系統(tǒng)的所有管理員、學(xué)生進(jìn)行管理、這就包括對用戶的添加、修改、刪除。公告管理管理員可以定期對主頁上面的公告進(jìn)行更新,通過該模塊,管理員可以輕松、快速的對公告進(jìn)行管理。信息公告的錄入主要功能是使管理員以簡捷的方式對通知公告表進(jìn)行操作,主要的功能有:增加、刪除和修改。管理員在進(jìn)行以上所有操作時(shí)首先要進(jìn)入登錄界面進(jìn)行登錄,登錄用的用戶名和密碼是按管理員的不同權(quán)限事先分配好的,登錄成功后可以操作公告信息。瀏覽信息公告在首頁的適當(dāng)位置設(shè)置公告欄,主要是最新信息。最新的而且較重要的可做成滾動(dòng)條的形式,滾動(dòng)顯示通知的信息。當(dāng)鼠標(biāo)置于某個(gè)標(biāo)題上時(shí),滾動(dòng)條停止?jié)L動(dòng),點(diǎn)擊標(biāo)題瀏覽通知公告的正文。其他的可在主頁面里的適當(dāng)位置按時(shí)間的倒序?qū)?biāo)題和發(fā)布日期顯示出來,點(diǎn)擊標(biāo)題瀏覽公告信息的正文。資源管理主要是對現(xiàn)有資源的管理和資料的上傳和對現(xiàn)有資源的管理可對現(xiàn)有的視頻和課件進(jìn)行增加、刪除、修改,可對那些上傳資料不合法的視頻資源可將其是否發(fā)布的屬性該為否,這樣將不會在頁面上顯示,也不能提供下載。還有一種就是將是否下載該為否,這樣的話只有在頁面顯示,但是還是不能下載。對于課件資源只有是否下載的屬性,不提供在線的打開,只提供下載。資料的上傳管理員可上傳所需的資源供學(xué)生用戶下載。數(shù)據(jù)庫的設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)的原則如下:盡可能的減少數(shù)據(jù)冗余和重復(fù)。結(jié)構(gòu)設(shè)計(jì)與操作設(shè)計(jì)相結(jié)合。數(shù)據(jù)結(jié)構(gòu)具有相對的穩(wěn)定性?;谝陨显O(shè)計(jì)原則,本系統(tǒng)設(shè)計(jì)了如下數(shù)據(jù)庫:系統(tǒng)ER圖圖3.2系統(tǒng)數(shù)據(jù)庫ER圖表1用戶性息表dy_user(URole字段用于區(qū)分用戶角色)圖3.3數(shù)據(jù)庫user表表2課程申請表dy_apply圖3.4數(shù)據(jù)庫apply表表3資源文件表dy_filesrc(存儲上傳文件所在路徑)圖3.5數(shù)據(jù)庫filesrc表表4BBS論壇回信息表dy_revert圖3.6數(shù)據(jù)庫revert表表5BBS論壇發(fā)帖信息表dy_topic圖3.7數(shù)據(jù)庫topic表表6課程信息表dy_topic_group圖3.8數(shù)據(jù)庫topic_group表表7老師代課信息表dy_tu圖3.9數(shù)據(jù)庫tu表第四節(jié)本章小節(jié)本章對網(wǎng)絡(luò)教學(xué)系統(tǒng)開發(fā)進(jìn)行整體設(shè)計(jì)與分析,主要通過需求分析、可行性分析。且分模塊介紹了本系統(tǒng)的主要功能(以用戶模塊、BBS論壇模塊、文件上傳模塊為例),并對數(shù)據(jù)庫設(shè)計(jì)與建表進(jìn)行了較為詳細(xì)的說明。
第四章網(wǎng)絡(luò)教學(xué)系統(tǒng)的實(shí)現(xiàn)第一節(jié)主要功能模塊的實(shí)現(xiàn)系統(tǒng)采用MVC模式,使用JSP+js+jquery+Struts2標(biāo)簽控制前臺頁面顯示,Struts2中Action與后臺交互。Spring框架主要用于依賴注入Action及配置數(shù)據(jù)庫文件。因系統(tǒng)功能復(fù)雜程度DAO數(shù)據(jù)庫訪問層并未使用Hibernate框架而使用原始JDBC操作數(shù)據(jù)庫。一、首頁首先進(jìn)入的是網(wǎng)站的首頁,首頁主要采用的主要是div容器,使用div能快速、準(zhǔn)確的對頁面的元素的大小和位置進(jìn)行定位,在div容器中進(jìn)一步使用table,對頁面的元素進(jìn)行排版。網(wǎng)站所有的頁面都采用統(tǒng)一的樣式文件.css,頁面所有的背景圖片都放在image文件夾下[11]。在主頁面顯示同學(xué)最近所發(fā)表的提問貼列表,主要包括所屬課程、課程編號、所屬學(xué)院、發(fā)表人及發(fā)表時(shí)間等。頁面右上方兩個(gè)超鏈接(reg.nav、msg.dl)分別跳轉(zhuǎn)到注冊與登錄頁面。注冊頁用于游客注冊賬戶,登錄頁面用于已注冊用戶登錄且系統(tǒng)會根據(jù)賬戶的URole值判斷用戶角色而賦予對應(yīng)權(quán)限。圖4.1系統(tǒng)首頁二、用戶注冊/登錄通過首頁的注冊鏈接進(jìn)入到注冊頁面,該頁面主要是對用戶的信息進(jìn)行采集,主體是一個(gè)表單。通過“提交”按鈕可以將用戶的信息發(fā)送到服務(wù)器端,注冊內(nèi)容會在JSP頁面通過js進(jìn)行前臺檢查,在后臺Struts2的Action中會進(jìn)行后臺檢查確保信息合法性。注冊頁面:圖4.2系統(tǒng)注冊頁登錄頁面:圖4.3系統(tǒng)登錄頁三、個(gè)人中心當(dāng)用戶登陸成功以后,會在對應(yīng)Action中判斷該用戶的角色從而賦予相應(yīng)的權(quán)限。此時(shí)用戶便擁有“個(gè)人中心”模塊功能。在頁面右上方會顯示用戶名并能顯示該角色擁有的功能圖4.4個(gè)人中心模塊個(gè)人信息頁顯示用戶各類信息并提供相應(yīng)角色的所有功能圖4.5個(gè)人中心主頁各功能都有自己獨(dú)立的頁面。以申請課程和上傳文件為例圖4.6課程申請頁文件上傳功能方便老師和同學(xué)共享學(xué)習(xí)資料(最大同時(shí)支持3文件同時(shí)上傳)圖4.7上傳文件頁四、論壇答疑本系統(tǒng)核心功能為論壇答疑模塊,該模塊學(xué)生可以發(fā)布自己學(xué)習(xí)過程中的疑問,而且可以指定希望詢問的老師,系統(tǒng)會在對應(yīng)的老師個(gè)人信息中提醒老師及時(shí)解答疑問。答疑頁面分頁顯示所有回復(fù)。論壇顯示頁:圖4.8論壇展示頁發(fā)表問題:圖4.9論壇發(fā)帖頁查看自己發(fā)帖信息:圖4.10個(gè)人發(fā)帖信息查看自己所參討論的貼子圖4.11個(gè)人參與討論頁第二節(jié)主要功能程序的實(shí)現(xiàn)一、程序設(shè)計(jì)思想常見的設(shè)計(jì)思想有兩種:結(jié)構(gòu)化和面向?qū)ο蠡?,本系統(tǒng)采用的是面向?qū)ο蟮脑O(shè)計(jì)思想,下面簡單介紹一下兩者的不同以及面向?qū)ο蟪绦蛟O(shè)計(jì)的優(yōu)點(diǎn)。傳統(tǒng)的結(jié)構(gòu)化開發(fā)過程包括軟件目標(biāo)的功能分解,以及使用正確的參數(shù)和返回值來創(chuàng)建函數(shù)。首先分析需求,確定功能,然后以函數(shù)的形式進(jìn)行建模。在一個(gè)Web應(yīng)用中很可能有上千個(gè)函數(shù),這些函數(shù)能夠不受限制的互相調(diào)用,因此在訪問某個(gè)變量時(shí),很難保證它不是正在被其他的函數(shù)訪問或者修改。用JSP腳本來開發(fā)Web應(yīng)用時(shí)就是上面所說的情況。只使用JSP而不使用任何Bean或自定義標(biāo)記,在Web應(yīng)用的規(guī)模比較小時(shí)還不會出現(xiàn)太多的問題,但是在Web應(yīng)用的規(guī)模增大時(shí)就肯定會出現(xiàn)問題。這些代碼也許能夠滿足功能上的需要,卻不能達(dá)到非功能性的要求。在結(jié)構(gòu)化開發(fā)方法面臨問題的時(shí)候,使用面向?qū)ο蟮姆椒ㄟM(jìn)行分析、設(shè)計(jì)和開發(fā)就可以解決一部分問題。面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法源于現(xiàn)實(shí)生活中的模塊化的思想。對象是提供一組相關(guān)功能的實(shí)體,對象之間互相作用從而完成一定的任務(wù)。開發(fā)方法包括對目標(biāo)的模塊化,以及用類的形式對數(shù)據(jù)和函數(shù)進(jìn)行封裝。本系統(tǒng)采用主流的ssh(struts2,hibernate,spring)技術(shù)構(gòu)架。相對于老系統(tǒng)優(yōu)勢:典型的三層構(gòu)架體現(xiàn)MVC(模型Model,視圖View和控制)思想,可以讓開發(fā)人員減輕重新建立解決復(fù)雜問題方案的負(fù)擔(dān)和精力。便于敏捷開發(fā)出新的需求,降低開發(fā)時(shí)間成本。良好的可擴(kuò)展性,ssh主流技術(shù)有強(qiáng)大的用戶社區(qū)支持它,所以該框架擴(kuò)展性非常強(qiáng),針對特殊應(yīng)用時(shí)具有良好的可插拔性,避免大部分因技術(shù)問題不能實(shí)現(xiàn)的功能。良好的可維護(hù)性,業(yè)務(wù)系統(tǒng)經(jīng)常會有新需求,三層構(gòu)架因?yàn)檫壿媽雍驼宫F(xiàn)層的合理分離,可使需求修改的風(fēng)險(xiǎn)降低到最低。隨著新技術(shù)的流行或系統(tǒng)的老化,系統(tǒng)可能需要重構(gòu),ssh構(gòu)架重構(gòu)成功率要比其他構(gòu)架高很多。<beanid="zxdyDataSource"class="org.springframework.jndi.JndiObjectFactoryB<propertyname="jndiName"><value>java:comp/env/jdbc/zxdy</value></property></bean><!--配置JdbcTemplate的bean--><beanid="jdbcTemplate"class="org.springframework.jdbc.core.JdbcTemplate"><propertyname="dataSource"><reflocal="zxdyDataSource"/></property></bean><!--配置DBUtil的bean并注入資源--><beanid="DBUtil"class="cn.xmz.dao.DBUtil"><propertyname="jt"><reflocal="jdbcTemplate"/></property><propertyname="ds"><reflocal="zxdyDataSource"/>即使軟件的部分發(fā)生改變,其他部分也不會改變。二、數(shù)據(jù)庫連接的建立本系統(tǒng)在數(shù)據(jù)庫連接方面,由于使用了Spring框架,則能方便的控制系統(tǒng)數(shù)據(jù)庫的配置和管理。在Spring的配置文件中application.xml配置用于數(shù)據(jù)庫的連接的bean。Spring框架的JdbctTemplate類能自動(dòng)實(shí)現(xiàn)數(shù)據(jù)庫的連接操作:<!--通過JNDI獲得數(shù)據(jù)源的引用-->
</property></bean>DBUtil類中封裝了數(shù)據(jù)庫操作的各種方法,直接使用DBUtil即可完成增刪改查任務(wù)。}returnal;//返回結(jié)果}三、注冊用戶當(dāng)用戶打開注冊頁面將自己的信息填寫好,點(diǎn)擊“提交”按鈕之后,在客戶端瀏覽器首先對用戶填入的信息進(jìn)行校驗(yàn),校驗(yàn)主要包括:用戶在必填的選項(xiàng)下是否輸入空的內(nèi)容,是否符合該項(xiàng)所定義的格式要求。如不符合要求,該表單的不會被提交到服務(wù)器端去,這樣有助于減輕服務(wù)器端的壓力。當(dāng)用戶填寫的信息正確之后,頁面由表單的Action屬性確定將用戶的請求發(fā)送到服務(wù)器下的Struts2對應(yīng)Action這個(gè)類下進(jìn)行處理注冊業(yè)務(wù),進(jìn)一步調(diào)用服務(wù)器端DAO層的DBUtil類中注冊方法,利用Java的JDBC是向數(shù)據(jù)庫的表dy_user中插入一條數(shù)據(jù)。具體處理過程publicvoidsetGender(Stringgender){publicvoidsetGender(Stringgender){this.gender=gender;//性別屬性的set方法}publicStringgetEmail(){returnemail;//電子郵件的get方法}publicvoidsetEmail(Stringemail){this.email=email;//電子郵件屬性的set方法}publicStringexecute()throwsException{StringrandNum=(String)getSession().get("randNum");//得到存在Session中的驗(yàn)證碼randNum=randNum.toUpperCase();//將驗(yàn)證碼轉(zhuǎn)大寫if(!randNum.equals(valcode)){//如果驗(yàn)證碼相同returngender;//性別屬性的get方法}因?yàn)槭褂肧truts2框架,因此各自Action會根據(jù)后臺數(shù)據(jù)操作結(jié)果跳轉(zhuǎn)到struts.xml文件中配置的對應(yīng)頁面,用戶注冊成功則會跳轉(zhuǎn)到SUCCESS對應(yīng)頁面,無需再在代碼中控制。使得代碼簡潔的同時(shí)降低了程序的耦合度。圖4.12struts.xml配置文件四、申請(審核)課程本系統(tǒng)中學(xué)生希望學(xué)習(xí)某門課程,需要登錄后申請?jiān)撜n程。然后等待該課程的代課老師審核,審核通過后便能發(fā)表關(guān)于該課程的信息。:學(xué)生申請課程學(xué)生申請課程ApplyActionpublicclassApplyActionextendsDYBaseAction{privateStringtgid;//申請課程的編號privateStringreason;//申請課程的原因publicvoidsetTgid(Stringtgid){this.tgid=tgid;}publicStringgetTgid(){returntgid;}publicvoidsetReason(Stringreason){this.reason=reason;}publicStringgetReason(){returnreason;}@OverridepublicStringexecute()throwsException{Stringsql="select1fromDY_Topic_GroupwhereTGID="+getTgid();if(!dbu.isExist(sql)){url="apply.jsp";//此課不存在跳轉(zhuǎn)到主頁message="該課程號對應(yīng)的課程不存在,現(xiàn)在將跳轉(zhuǎn)到申請頁";returnSUCCESS;}Stringuid=(String)getSession().get("uid");sql="select1fromDY_ApplywhereTGID="+tgid+"andUID='"+uid+"'"+"andAFlag=0";//如果存在該學(xué)生對該門課沒有處理的請求時(shí)if(dbu.isExist(sql)){url="apply.jsp";message="你已經(jīng)申請過該課程,請耐心等待處理";returnSUCCESS;}sql="select1fromDY_TUwhereTGID="+tgid+"andUID='"+uid+"'";if(dbu.isExist(sql)){url="apply.jsp";message="你已經(jīng)是該課程學(xué)生,無需申請";returnSUCCESS;}Stringrole=(String)getSession().get("role");if(!"0".equals(role)){//目前登陸的不是學(xué)生url="IndexAction.action";message="你的身份不是學(xué)生,不需要申請課程,現(xiàn)在將要跳轉(zhuǎn)到主頁";returnSUCCESS;}sql="insertintoDY_Apply(TGID,UID,AReason)values("+tgid+",'"+uid+"','"+reason+"')";if(dbu.update(sql)){url="IndexAction.action";message="申請?zhí)峤怀晒?,請耐心等待,現(xiàn)在將要跳轉(zhuǎn)到主頁";returnSUCCESS;}else{url="apply.jsp";message="未知錯(cuò)誤,申請?zhí)峤皇?,現(xiàn)在將要跳轉(zhuǎn)到申請頁面";returnSUCCESS;}五、發(fā)帖(回帖)1、發(fā)帖進(jìn)入個(gè)人中心后,點(diǎn)擊“我要提問”,系統(tǒng)跳轉(zhuǎn)到GMCAction所指向的頁面,在GMCAction中系統(tǒng)根據(jù)Session獲得該用戶ID記錄發(fā)帖人與發(fā)帖時(shí)間。圖4.13發(fā)帖packagecn.xmz.action;packagecn.xmz.action;importjava.util.*;publicclassGetMyCourseActionextendsDYBaseAction{privatestaticfinallongserialVersionUID=1L;@SuppressWarnings("unchecked")publicMapgetCourse(){Stringuid=(String)getSession().get("uid");//得到登陸用戶的IDStringsql="selectdtg.TGIDtgid,TGNamegnamefrom"+"DY_Topic_Groupdtg,DY_TUdtwheredt.TGID="+"dtg.TGIDanddt.UID="+uid;//得到用戶選課列表的SQL語句returndbu.getCourse(sql);}@OverridepublicStringexecute()throwsException{returnSUCCESS;}}2、回帖該部分實(shí)現(xiàn)和主貼的實(shí)現(xiàn)基本相同,回帖主要是從回帖表中獲取的數(shù)據(jù)。六、文件上傳本系統(tǒng)中有老師用戶和管理員可進(jìn)行文件的上傳,在頁面有上傳文件的控件,系統(tǒng)使用Struts2的上傳文件API,需要在Struts.xml中配置上傳文件的基礎(chǔ)設(shè)置,然后在SrcFileUploadAction中完成上傳文件邏輯。struts.xml中配置上傳文件的Action<actionname="srcUploadAction_*"class="cn.xmz.action.SrcUploadAction"method="{<!--Struts2自帶的上傳攔截器需要配置Constant-->interceptor-refname="fileUpload"><<!--允許上傳pdf,txt,ppt,zip--><paramname="allowedTypes">text/plain,application/vnd.ms-powerpoint,application/msword,application/pdf,applic</param></interceptor-ref><interceptor-refname="defaultStack"/><resultname="uplaodSuccess">/sourceUpload.jsp</result><resultname="input">/sourceUpload.jsp</result></action>按照按照Struts2上傳文件API的規(guī)則編寫用于上傳文件的Action:SrcUploadActionpackagecn.xmz.action;importjava.io.File;importjava.io.File;importjava.io.IOException;importjava.util.List;importmons.io.FileUtils;importorg.apache.struts2.ServletActionContext;importcn.xmz.dao.UploadDownloadUtil;importcn.xmz.domain.UploadDownlloadFile;importcom.opensymphony.xwork2.ActionContext;importcom.opensymphony.xwork2.ActionSupport;publicclassSrcUploadActionextendsActionSupport{privatestaticfinallongserialVersionUID=1L;/**文件保存路徑*/privateStringfilePath;/**接收上傳的文件屬性名必須與Form表單中屬性名相同*/privateList<File>uploadFile;/**上傳文件的文件名*/privateList<String>uploadFileFileName;privateUploadDownloadUtilupDownDao;publicList<File>getUploadFile(){returnuploadFile;}publicvoidsetUploadFile(List<File>uploadFile){this.uploadFile=uploadFile;}publicList<String>getUploadFileFileName(){returnuploadFileFileName;}publicvoidsetUploadFileFileName(List<String>uploadFileFileName){this.uploadFileFileName=uploadFileFileName;}@OverridepublicStringexecute()throwsException{returnnull;}publicStringuploadFiles()throwsException{filePath=ServletActionContext.getServletContext().getRealPath("/uploadDownload");FilesavePath;upDownDao=newUploadDownloadUtil();ActionContext.getContext().put("uploadInfo","上傳完成");if(uploadFile!=null){savePath=newFile(filePath);if(!savePath.exists())savePath.mkdirs();for(inti=0;i<uploadFile.size();i++){//在保存路徑中創(chuàng)建新文件Filesavefile=newFile(savePath,uploadFileFileName.get(i));//利用mons.io.FileUtils完成文件復(fù)制FileUtils.copyFile(uploadFile.get(i),savefile);//文件信息保存到數(shù)據(jù)庫if(!upDownDao.uplaod(newUploadDownlloadFile(uploadFileFileName.get(i)savefile.getAbsolutePath()))){ActionContext.getContext().put("uploadInfo","上傳出錯(cuò)");break;}}}return"uplaodSuccess";}本章主要展示了系統(tǒng)的實(shí)際運(yùn)行效果,并對部分主要功能模塊結(jié)合代碼進(jìn)行說明,對于用戶注冊、學(xué)生申請課程、教師審核申請、論壇發(fā)帖回貼、文件上傳給予了代碼加圖形展示的說明,從源程序和界面兩方面介紹系統(tǒng)功能。 第五章系統(tǒng)測試第一節(jié)系統(tǒng)測試的目的跟原則在開發(fā)大型軟件系統(tǒng)的過程中,需要面對錯(cuò)綜復(fù)雜的問題,因此,在軟件生存周期的每個(gè)階段都不可避免地會產(chǎn)生錯(cuò)誤。我們力求在每個(gè)階段結(jié)束之前通過嚴(yán)格的技術(shù)審查,盡可能早的發(fā)現(xiàn)并糾正錯(cuò)誤。測試的目的就是在軟件投入生產(chǎn)性運(yùn)行之前,盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。目前軟件測試仍然是保證軟件質(zhì)量的關(guān)鍵步驟,它是對軟件規(guī)格說明、設(shè)計(jì)和編碼的最后復(fù)審。盡管面向?qū)ο蠹夹g(shù)的基本思想保證了軟件應(yīng)該有更高的質(zhì)量,但無論采用什么樣的編程技術(shù),編程人員的錯(cuò)誤都是不可避免的,而且由于面向?qū)ο蠹夹g(shù)開發(fā)的軟件代碼重用率高,更需要嚴(yán)格測試,避免錯(cuò)誤的繁衍。因此,軟件測試在面向?qū)ο缶幊汤锔哂兴闹匾?。與開發(fā)過程類似,測試過程也必須分步驟進(jìn)行,每個(gè)步驟在邏輯上是前一個(gè)步驟地繼續(xù)。大型軟件系統(tǒng)通常由若干個(gè)子系統(tǒng)組成,每個(gè)子系統(tǒng)又由許多模塊組成。需求規(guī)格說明需求規(guī)格說明概要設(shè)計(jì)詳細(xì)設(shè)計(jì)編碼單元測試集成測試系統(tǒng)測試圖5.1系統(tǒng)測試單元測試單元測試的用例從單元詳細(xì)設(shè)計(jì)中導(dǎo)出。在單元測試中可以采用功能性測試和結(jié)構(gòu)性測試兩種。集成測試在這個(gè)測試步驟中所發(fā)現(xiàn)的往往是概要設(shè)計(jì)的錯(cuò)誤。系統(tǒng)測試在這個(gè)測試步驟中所發(fā)現(xiàn)的往往是需求規(guī)格說明的錯(cuò)誤。一般來說,系統(tǒng)測試是功能性測試,不是結(jié)構(gòu)性測試。第二節(jié)子系統(tǒng)測試在論壇開發(fā)過程中,每開發(fā)完一個(gè)模塊都會進(jìn)行模塊功能測試,由于系統(tǒng)還沒有最后完成,現(xiàn)在暫時(shí)還不能進(jìn)行集成和系統(tǒng)測試,這部分將在系統(tǒng)完成后才能進(jìn)行。在測試的過程中,主要問題:JSP的中文亂碼問題問題描述及解決辦法:顯示信息時(shí)出現(xiàn)了中文文字顯示的問題。Java語言默認(rèn)的編碼方式是Unicode,而我們通常使用的文件和數(shù)據(jù)庫都是基于GB2312或者BIG5等方式編碼的,在程序中經(jīng)常會碰到漢字的處理及顯示的問題。在向網(wǎng)頁輸出中文字符串的時(shí)候,經(jīng)常會采用out.println(string)或者<%=string%>方式,那么必須轉(zhuǎn)換,方式是通過<%@pageContentType=”text/html;charset=gb2312”%>定義輸出字符集,從而實(shí)現(xiàn)內(nèi)碼的自動(dòng)轉(zhuǎn)換。中文作為參數(shù)傳遞出現(xiàn)了亂碼的問題。原因是客戶提交的中文信息經(jīng)瀏覽器編碼到達(dá)服務(wù)器后,JSP無法將其正確解碼。而事實(shí)上瀏覽器缺省的編碼方式為ISO-8859-1,所以我們在處理中文參數(shù)時(shí),把客戶提交的中文參數(shù)先轉(zhuǎn)換后再應(yīng)用。通過以下的方法解決這個(gè)問題。<%@pagecontent-Type=”text/html;charset=gb2312”%>,就可以解決漢字顯示問題。在把數(shù)據(jù)輸入到數(shù)據(jù)庫中前,進(jìn)行下面的轉(zhuǎn)換:byte[]temp=srcString.getBytes(“iso-8859-1”);StringdesString=newString(temp);圖5.2處理中文亂碼第三節(jié)本章小節(jié)軟件開發(fā)與軟件測試密不可分,本章即說明本系統(tǒng)開發(fā)過程中軟件測試部分,從程序的單元測試到整體系統(tǒng)部署在Tomcat后的整體測試。并對測試過程中遇到的常見問題進(jìn)行了說明,對于JSP的中文亂碼問題進(jìn)行了初步的解釋同是給出了較為常見的解決方法。
第六章總結(jié)與展望第一節(jié)總結(jié)本論文簡要地講述了學(xué)網(wǎng)絡(luò)教學(xué)系統(tǒng)的實(shí)現(xiàn)過程及SSH在系統(tǒng)中的應(yīng)用,重點(diǎn)是講述系統(tǒng)模塊結(jié)構(gòu)和業(yè)務(wù)邏輯進(jìn)行設(shè)計(jì)來實(shí)現(xiàn)系統(tǒng)的主要功能。首先分析了系統(tǒng)的功能需求,確定了系統(tǒng)的選用平臺、開發(fā)模式和功能實(shí)現(xiàn)模塊,并且對關(guān)鍵技術(shù)進(jìn)行了簡要的概述。采用MVC設(shè)計(jì)模式建立三層體系結(jié)構(gòu),并對系統(tǒng)的功能模塊和數(shù)據(jù)庫進(jìn)行了詳細(xì)的設(shè)計(jì),最后實(shí)現(xiàn)了系統(tǒng)的各模塊。系統(tǒng)設(shè)計(jì)采用了MVC模式,使得表示層、業(yè)務(wù)邏輯層、模型層進(jìn)行了分離。利用Ajax進(jìn)行開發(fā),可以比較有效地實(shí)現(xiàn)與用戶的信息交互,提高系統(tǒng)的智能化程度。并且當(dāng)用戶請求時(shí),Ajax只是更新頁面的少許部分,能夠提高系統(tǒng)的速度。使用Struts2和Spring面向流行框架進(jìn)行開發(fā),系統(tǒng)有規(guī)范的接口,提高程序的利用率和方便系統(tǒng)的維護(hù)。第二節(jié)展望通
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 10 父母多愛我(教學(xué)設(shè)計(jì))-2023-2024學(xué)年道德與法治三年級上冊統(tǒng)編版
- 現(xiàn)房定金合同范本
- 10古詩三首《石灰吟》教學(xué)設(shè)計(jì)-2023-2024學(xué)年統(tǒng)編版語文六年級下冊
- 白粘土買賣合同范本
- 2025屆高考生物備考教學(xué)設(shè)計(jì):第七章 生物的變異和進(jìn)化之基因頻率與基因型頻率的計(jì)算
- 信號塔合同范本
- 教師會校長講話稿
- 合同范本游戲簽約
- 住宿整棟出租合同范本
- 污水bot合同范本
- 【高考真題】2024年新課標(biāo)全國Ⅱ卷高考語文真題試卷(含答案)
- 旅游服務(wù)質(zhì)量評價(jià)體系
- 義烏市建筑工程質(zhì)量通病防治措施100條(2022版本)
- 統(tǒng)編版高中政治必修3必背主觀題
- 供電所安全第一課培訓(xùn)
- 鄭州鐵路職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試參考試題庫(含答案)
- 岳陽職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試參考試題庫(含答案)
- 部編人教版六年級道德與法治下冊第7課《多元文化 多樣魅力》教學(xué)設(shè)計(jì)
- 新時(shí)代勞動(dòng)教育教程(高職)大學(xué)生勞動(dòng)教育全套教學(xué)課件
- 2023年開展的課外讀物負(fù)面清單管理的具體措施
- 《國防動(dòng)員實(shí)施》課件
評論
0/150
提交評論