高校教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-網(wǎng)上答疑管理模塊畢業(yè)設(shè)計(jì)_第1頁(yè)
高校教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-網(wǎng)上答疑管理模塊畢業(yè)設(shè)計(jì)_第2頁(yè)
高校教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-網(wǎng)上答疑管理模塊畢業(yè)設(shè)計(jì)_第3頁(yè)
高校教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-網(wǎng)上答疑管理模塊畢業(yè)設(shè)計(jì)_第4頁(yè)
高校教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-網(wǎng)上答疑管理模塊畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

摘要現(xiàn)在高校教學(xué)產(chǎn)生的信息量越來(lái)越龐大,隨著計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,一款能夠幫助高校管理教學(xué)的軟件十分必要,根據(jù)這種需求,建立了高校教學(xué)管理系統(tǒng),該系統(tǒng)能夠?qū)崿F(xiàn)讓教師通過(guò)網(wǎng)絡(luò)進(jìn)行學(xué)生網(wǎng)上答疑管理,加了老師和學(xué)生的互動(dòng)性,提高了老師的效率,為高校教學(xué)質(zhì)量的提高奠定了基礎(chǔ)。本論文主要介紹的是高校教學(xué)管理系統(tǒng)的網(wǎng)上答疑管理模塊,分析了系統(tǒng)中該模塊的功能需求和實(shí)現(xiàn)該功能的技術(shù)原理。本文還介紹了教學(xué)管理系統(tǒng)的總體架構(gòu),該系統(tǒng)采用的是三層B/S架構(gòu)。在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí)使用了Mysql,使用了JSP進(jìn)行編程,另外還用到、Servlet、JavaBean等技術(shù)進(jìn)行系統(tǒng)開(kāi)發(fā)。本模塊實(shí)現(xiàn)的功能是教學(xué)管理系統(tǒng)的網(wǎng)上答疑管理功能,主要包括教師對(duì)于學(xué)生問(wèn)題的管理功能,學(xué)生對(duì)于自己?jiǎn)栴}的管理功能,教師回復(fù)學(xué)生問(wèn)題的功能,以及管理學(xué)生和老師賬號(hào)的功能。該模塊的使用大大增加了教師和學(xué)生的互動(dòng)性,能夠讓教師及時(shí)幫助學(xué)生解決學(xué)習(xí)中所遇到的問(wèn)題,同時(shí)通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)資源共享,所有學(xué)生都能夠分享到教師的答案,從而提高學(xué)習(xí)效率和教學(xué)質(zhì)量。關(guān)鍵詞:網(wǎng)上答疑管理模塊,JSP,瀏覽器/服務(wù)器,高校教學(xué)管理系統(tǒng)

AbstractNowtheteachingofinformationhasbecomemoreandmorebig,withthedevelopmentofcomputerscienceandtechnology,ahelpofuniversityteachingmanagementsoftwareisverynecessary,accordingtothedemand,wesetuptheteachingmanagementsystem,thesystemcanrealizetheteachertostudentsthroughthenetworkproblemsetsjobmanagement,onlineexaminationmanagement,on-linequestion-answeringmanagement,practicemanagementfourbigfunctions,thusgreatlyincreasedtheteacherandthestudentsinteractive,alsogreatlyimprovetheefficiencyoftheteacher,whichlaidafoundationfortheimprovementofteachingqualityincollegesanduniversities.Aremainlyintroducedinthispapertheteachingmanagementsystemoftheon-linequestion-answeringmanagementmodule,analyzesthefunctionsofthemoduleinthesystemrequirements,andrealizethefunctionoftechnicalprinciple,atthesametime,thepaperhasanalyzedthefeasibilityofthemodule.Thisarticlealsointroducestheoverallarchitectureoftheteachingmanagementsystem,includingthemoduleofonlinequestion-answeringsystemhascarriedonthedetaileddesignandintroduction.Inthedesignofdatabase,madearelativelycompletedatabasetablestructure,madecleartherelationshipofeachtable.Inaddition,thesystemUSESathree-tierB/Sstructure,usingJSPprogramming,alsousethetomcat,Servlet,JavaBeanandMysqltechnologyforsystemdevelopment.Thismoduleimplementsthefunctionoftheteachingmanagementsystemon-linequestion-answeringmanagementfunctions,managementfunctionsmainlyincludestheteachertostudents,studentsfortheirownproblemofmanagementfunction,thefunctionoftheteachersrespondtostudents'problems,aswellasthefunctionofthestudentsandtheteacheraccountmanagement.Theuseofthemodulehasgreatlyincreasedtheinteractionofteachersandstudents,canmaketeacherstimelyhelpstudentstosolvetheproblemsencounteredinthelearning,atthesametimethroughthenetworktorealizeresourcessharing,allthestudentsareabletosharetheanswertotheteacher,soastoimprovethelearningefficiencyandteachingquality.KeyWords:Mysql,JSP,TheBrowser/Server,OnlineQuestion-AnsweringManagementModule

目錄TOC\o"1-3"\h\z\u1概述 21.1開(kāi)發(fā)背景 21.2設(shè)計(jì)目的及內(nèi)容 21.2.1設(shè)計(jì)目的 21.2.2設(shè)計(jì)內(nèi)容 21.3技術(shù)概述 21.3.1B/S模式簡(jiǎn)介 21.3.1MYSQL簡(jiǎn)介 21.3.3MVC模式簡(jiǎn)介 21.4硬件和軟件要求 21.4.1硬件要求 21.4.2軟件要求 21.5基本環(huán)境 21.6系統(tǒng)開(kāi)發(fā)命名規(guī)則 21.6.1命名規(guī)則 22系統(tǒng)分析 22.1可行性分析 22.2需求分析 22.2.1系統(tǒng)需求分析 22.2.2系統(tǒng)主要設(shè)計(jì)類 22.3功能分析 22.3.1用戶基本功能 22.3.2后臺(tái)管理 22.3.3板塊管理 23數(shù)據(jù)庫(kù)設(shè)計(jì) 23.1數(shù)據(jù)庫(kù)概要結(jié)構(gòu)設(shè)計(jì) 23.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 24系統(tǒng)界面設(shè)計(jì) 24.1系統(tǒng)界面設(shè)計(jì) 25主要代碼 25.1配置文件 2結(jié)論 2致謝 2參考文獻(xiàn) 21概述1.1開(kāi)發(fā)背景互聯(lián)網(wǎng)的高速發(fā)展為現(xiàn)代教育事業(yè)發(fā)展注入了新的活力,建立起基于互聯(lián)網(wǎng)的遠(yuǎn)程教育體系已經(jīng)成為現(xiàn)代教育所關(guān)注的熱點(diǎn)。原來(lái)傳統(tǒng)的教學(xué),教師只能通過(guò)課堂短短的時(shí)間來(lái)向?qū)W生傳授知識(shí),教師與學(xué)生缺乏交流機(jī)會(huì),教師只能通過(guò)布置紙質(zhì)作業(yè)和考試來(lái)檢測(cè)學(xué)生的學(xué)習(xí)成果。同時(shí),教師回答單個(gè)學(xué)生問(wèn)題時(shí)只能把知識(shí)傳授給一個(gè)學(xué)生,實(shí)現(xiàn)不了所有學(xué)生共享問(wèn)題的思路和答案,只有通過(guò)課堂教學(xué)才能實(shí)現(xiàn)共享,而這些知識(shí)由于學(xué)生能力的不同,需求也不一樣,但是所有學(xué)生還必須得聽(tīng)課,這樣就浪費(fèi)了學(xué)生的時(shí)間,降低了學(xué)習(xí)效率。而高效教學(xué)管理系統(tǒng)的應(yīng)用能夠更加快捷的傳遞信息,讓教師和學(xué)生互動(dòng)的機(jī)會(huì)更多,教師可以通過(guò)系統(tǒng)的習(xí)題作業(yè)管理功能來(lái)布置學(xué)生作業(yè)檢測(cè)學(xué)生學(xué)習(xí)成果,通過(guò)在線考試管理來(lái)考核學(xué)生,通過(guò)在線答疑管理功能來(lái)實(shí)現(xiàn)師生互動(dòng),并能把問(wèn)題答案和解題思路存儲(chǔ)在數(shù)據(jù)庫(kù)里,實(shí)現(xiàn)資源共享,學(xué)生可以根據(jù)不同需求來(lái)查找自己所要的答案和方法,節(jié)省了大量時(shí)間,使學(xué)生學(xué)習(xí)更加高效。高校教學(xué)管理系統(tǒng)是現(xiàn)代化教學(xué)的手段,它運(yùn)用計(jì)算機(jī)網(wǎng)絡(luò)為工具幫助教師進(jìn)行教學(xué)管理,在這個(gè)過(guò)程中它運(yùn)用了多媒體技術(shù)和網(wǎng)絡(luò)技術(shù)等多種技術(shù)手段。通過(guò)這種教學(xué)系統(tǒng),高效教學(xué)質(zhì)量能夠得到快速提高。教育與互聯(lián)網(wǎng)的結(jié)合,這是一種先進(jìn)的教學(xué)理念,豐富了教育教學(xué)的手段,使中國(guó)的教育現(xiàn)代化進(jìn)程向前邁進(jìn)了一大步。1.2設(shè)計(jì)目的及內(nèi)容1.2.1設(shè)計(jì)目的高效教學(xué)管理系統(tǒng)的網(wǎng)上答疑管理模塊設(shè)計(jì)的主要目的是讓教師能夠通過(guò)互聯(lián)網(wǎng)實(shí)現(xiàn)遠(yuǎn)程教學(xué),對(duì)學(xué)生提出的問(wèn)題進(jìn)行答疑。教師也可以對(duì)學(xué)生的問(wèn)題進(jìn)行分類、篩選管理,并把問(wèn)題儲(chǔ)存在數(shù)據(jù)庫(kù)中,方便學(xué)生查閱,實(shí)現(xiàn)資源共享。另外,學(xué)生也可以提出問(wèn)題,更改自己的信息,對(duì)數(shù)據(jù)庫(kù)中的問(wèn)題進(jìn)行搜索查閱學(xué)習(xí)。1.2.2設(shè)計(jì)內(nèi)容實(shí)現(xiàn)高校教學(xué)管理系統(tǒng)的網(wǎng)上答疑管理模塊主要是對(duì)學(xué)生提出問(wèn)題數(shù)據(jù)和老師答疑數(shù)據(jù)信息的管理,包括提出問(wèn)題,刪除問(wèn)題,修改問(wèn)題,以及對(duì)精典問(wèn)題加精置頂?shù)墓δ?。同時(shí),也能實(shí)現(xiàn)學(xué)生更改自身信息,教師管理學(xué)生信息的功能。1.3技術(shù)概述1.3.1B/S模式簡(jiǎn)介B/S(瀏覽器/服務(wù)器模式)[1]是隨著Internet結(jié)束的興起,對(duì)C/S結(jié)構(gòu)的一種改進(jìn)。在這個(gè)結(jié)構(gòu)下,軟件應(yīng)用的業(yè)務(wù)邏輯完全在應(yīng)用服務(wù)器端實(shí)現(xiàn),用戶表現(xiàn)完全在Web服務(wù)器實(shí)現(xiàn),客戶端直需要瀏覽器即可進(jìn)行業(yè)務(wù)處理,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。1.3.1Mysql簡(jiǎn)介MySQL[2]是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQLAB公司開(kāi)發(fā),目前屬于Oracle公司。Mysql是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在WEB應(yīng)用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySQL所使用的SQL語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySQL軟件采用了雙授權(quán)政策(本詞條“授權(quán)政策”),它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),一般中小型網(wǎng)站的開(kāi)發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。由于其社區(qū)版的性能卓越,搭配PHP和Apache可組成良好的開(kāi)發(fā)環(huán)境。1.3.3MVCMVC模式[3]是"Model-View-Controller"的縮寫,中文翻譯為"模式-視圖-控制器"。MVC應(yīng)用程序總是由這三個(gè)部分組成。Event(事件)導(dǎo)致Controller改變Model或View,或者同時(shí)改變兩者。只要Controller改變了Models的數(shù)據(jù)或者屬性,所有依賴的View都會(huì)自動(dòng)更新。類似的,只要Controller改變了View,View會(huì)從潛在的Model中獲取數(shù)據(jù)來(lái)刷新自己。MVC設(shè)計(jì)思想:MVC英文即Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層——模型層、視圖層、控制層。MVC的優(yōu)點(diǎn):將視圖展示和應(yīng)用邏輯清晰的分離開(kāi)來(lái),降低了模型和視圖之間的耦合性,使得系統(tǒng)設(shè)計(jì)時(shí)具有更高的靈活性。首先,最重要的是應(yīng)該有多個(gè)視圖對(duì)應(yīng)一個(gè)模型的能力。在目前用戶需求的快速變化下,可能有多種方式訪問(wèn)應(yīng)用的要求。例如,訂單模型可能有本系統(tǒng)的訂單,也有網(wǎng)上訂單,或者其他系統(tǒng)的訂單,但對(duì)于訂單的處理都是一樣,也就是說(shuō)訂單的處理是一致的。按MVC設(shè)計(jì)模式,一個(gè)訂單模型以及多個(gè)視圖即可解決問(wèn)題。這樣減少了代碼的復(fù)制,即減少了代碼的維護(hù)量,一旦模型發(fā)生改變,也易于維護(hù)。其次,由于模型返回的數(shù)據(jù)不帶任何顯示格式,因而這些模型也可直接應(yīng)用于接口的使用。1.4硬件和軟件要求1.4.1硬件要求CPU:Inter(R)Core(TM)2DuoCPU2.10GHzHDD:300GRAM:2.00GB1.4.2軟件要求操作系統(tǒng):WindowsXP/Windows8。數(shù)據(jù)庫(kù):mysql6.5。開(kāi)發(fā)工具:Myecplise6.5。輔助開(kāi)發(fā)工具:navicatformysql。瀏覽器:IE9.0。1.5基本環(huán)境以Java語(yǔ)言為基本開(kāi)發(fā)語(yǔ)言,通過(guò)運(yùn)用集成開(kāi)發(fā)環(huán)境Myecplise(6.5)[4],Tomcat6.0[5]服務(wù)器等相關(guān)知識(shí),利用Java語(yǔ)言的面向?qū)ο蟮奶匦约癕VC設(shè)計(jì)思想,設(shè)計(jì)一個(gè)企業(yè)物流管理方案,模擬一個(gè)企業(yè)物流管理系統(tǒng)的出入庫(kù)管理模塊。1.6系統(tǒng)開(kāi)發(fā)命名規(guī)則1.6.1命名規(guī)則(1)項(xiàng)目中命名規(guī)則[6] 項(xiàng)目中各個(gè)子項(xiàng)均以子項(xiàng)功能名稱的英文組合,類名以對(duì)應(yīng)的意思命名,組成的所有單詞的首字母大寫;類中的方法依據(jù)功能而定,方法命名首單詞的首字母小寫,其他單詞首字母均大寫;項(xiàng)目中的頁(yè)面命名是項(xiàng)目名為前綴加上相應(yīng)功能名。(2)數(shù)據(jù)庫(kù)命名規(guī)則 數(shù)據(jù)庫(kù)名稱與項(xiàng)目名稱相同,數(shù)據(jù)庫(kù)中表命名規(guī)則是表名稱英文意思的單詞或多個(gè)單詞的組合,單詞首個(gè)字母大寫;表中字段名是相應(yīng)字段的英文單詞或多個(gè)單詞的組合,單詞首歌字母大寫。2系統(tǒng)分析2.1可行性分析原來(lái)傳統(tǒng)教學(xué)的教學(xué)方式在管理學(xué)生信息上存在很多缺點(diǎn),如過(guò)程操作復(fù)雜,手續(xù)復(fù)雜,效率低下,數(shù)據(jù)信息不可靠,這些缺點(diǎn)嚴(yán)重制約了現(xiàn)代教學(xué)質(zhì)量的提高和發(fā)展空間。隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,將互聯(lián)網(wǎng)[7]技術(shù)與教育教學(xué)有機(jī)結(jié)合起來(lái)的理念已經(jīng)成為一種先進(jìn)的教學(xué)觀念,因此高校教學(xué)管理系統(tǒng)是從實(shí)際出發(fā),滿足現(xiàn)代高校教學(xué)的需求,并參照國(guó)外的先進(jìn)教學(xué)模式開(kāi)發(fā)而成,該模塊主要實(shí)現(xiàn)了學(xué)生能夠提出不同類別的問(wèn)題的功能,教師回答學(xué)生問(wèn)題的功能,學(xué)生搜索問(wèn)題的功能,以及一些相關(guān)操作,具有操作簡(jiǎn)單,交互界面清晰,數(shù)據(jù)準(zhǔn)確性高的特點(diǎn),大大提高了教師與學(xué)生的交互性,實(shí)現(xiàn)了教學(xué)資源共享,從而大大提高了教學(xué)質(zhì)量和教學(xué)效率,因此該系統(tǒng)在性能上具有可行性。本系統(tǒng)采用的是JSP開(kāi)發(fā)語(yǔ)言,調(diào)試比較簡(jiǎn)單,技術(shù)上已經(jīng)發(fā)展成熟能夠滿足需求,所以在技術(shù)上也存在可行性。本系統(tǒng)開(kāi)發(fā)成本低,并且本系統(tǒng)開(kāi)發(fā)成功后,與傳統(tǒng)的教學(xué)方式相比,具有高效率,低成本、高質(zhì)量的特點(diǎn),可以節(jié)省大量人力、物力、財(cái)力,所以經(jīng)濟(jì)上也存在可行性。綜上所訴,本系統(tǒng)的開(kāi)發(fā)在性能,技術(shù),經(jīng)濟(jì)上都是完全可靠的。2.2需求分析2.2.1系統(tǒng)需求分析教師操作的功能:回答學(xué)生問(wèn)題、管理學(xué)生問(wèn)題(置頂/加精/刪除)、修改學(xué)生信息學(xué)生操作的功能:在不同板塊提出問(wèn)題、搜索問(wèn)題、查看管理自己提出的問(wèn)題2.2.2系統(tǒng)主要設(shè)計(jì)類ClassConnectionManager:該類實(shí)現(xiàn)連接數(shù)據(jù)庫(kù),打開(kāi)數(shù)據(jù)庫(kù),創(chuàng)建Connection連接,及關(guān)閉數(shù)據(jù)庫(kù)和相關(guān)資源的功能。該類設(shè)計(jì)為單例模式。com.dao:該包中的類提供對(duì)數(shù)據(jù)庫(kù)各表操作。Com.entity:該包中的類提供了數(shù)據(jù)庫(kù)表對(duì)應(yīng)的實(shí)體類com.service:該服務(wù)提供系統(tǒng)中服務(wù)方法的功能com.action:該包中類提供了程序的邏輯結(jié)構(gòu)的實(shí)現(xiàn),起到控制跳轉(zhuǎn)和實(shí)現(xiàn)的作用2.3功能分析2.3.1用戶基本功能登錄頁(yè)面要求用戶輸入用戶帳戶、密碼和驗(yàn)證碼。在輸入用戶帳戶、密碼驗(yàn)證碼之后,系統(tǒng)將驗(yàn)證用戶帳戶和密碼及驗(yàn)證碼是否正確,如果驗(yàn)證成功,就使用戶處于登錄狀態(tài)。否則,系統(tǒng)顯示用戶帳戶或密碼錯(cuò)誤的提示信息。發(fā)起問(wèn)題當(dāng)?shù)卿浐螅c(diǎn)擊發(fā)帖,就可以對(duì)自己不會(huì)的問(wèn)題發(fā)起幫助,然后問(wèn)題就會(huì)以論壇帖子的形式發(fā)出,當(dāng)別人看到也便可以對(duì)其進(jìn)行回帖回復(fù)問(wèn)題當(dāng)看到別人的問(wèn)題會(huì),如果自己會(huì),可以點(diǎn)擊回復(fù)進(jìn)行回答(前提是登陸狀態(tài)下才可回復(fù))2.3.2后臺(tái)管理系統(tǒng)的這項(xiàng)功能只有超級(jí)管理員有權(quán)限執(zhí)行,普通管理員沒(méi)有此項(xiàng)權(quán)限。用戶管理單擊“查看用戶”,可以顯示所有用戶的基本信息并可以對(duì)其進(jìn)行操作。板塊管理單擊“計(jì)算機(jī)”,可以顯示計(jì)算機(jī)類的所有問(wèn)題并可以對(duì)其進(jìn)行操作。單擊“機(jī)械類”,可以顯示機(jī)械類的所有問(wèn)題并可以對(duì)其進(jìn)行操作。單擊“金融類”,可以顯示金融類的所有問(wèn)題并可以對(duì)其進(jìn)行操作。添加管理員該功能可以為某個(gè)后臺(tái)添加管理員。添加管理員要求有兩個(gè):一是必須已經(jīng)是注冊(cè)用戶。二是不行高級(jí)管理員才能操作。刪除管理員該功能可以刪除某個(gè)倉(cāng)庫(kù)的管理員。刪除管理員需要查找需要?jiǎng)h除的管理員的信息,查詢所有員工的信息,直接點(diǎn)擊“刪除”,完成刪除管理員的操作。2.3.3板塊管理板塊管理,超級(jí)管理員和普通管理員都有權(quán)限進(jìn)行操作。問(wèn)題置頂實(shí)現(xiàn)問(wèn)題的置頂。問(wèn)題加精實(shí)現(xiàn)問(wèn)題的加精操作。加精:管理員管理問(wèn)題列表,實(shí)現(xiàn)加精的操作。3數(shù)據(jù)庫(kù)設(shè)計(jì)3.1數(shù)據(jù)庫(kù)概要結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)數(shù)據(jù)庫(kù)采用Mysql數(shù)據(jù)庫(kù)[8],系統(tǒng)數(shù)據(jù)庫(kù)名稱為bbs_db。數(shù)據(jù)庫(kù)中包含3張表。用戶信息表,包括的數(shù)據(jù)項(xiàng)有:ID、用戶名、密碼、性別、電話、qq、Email、頭像、權(quán)限等。問(wèn)題表,包括的數(shù)據(jù)項(xiàng)有:ID,標(biāo)題、內(nèi)容、發(fā)起人、發(fā)起時(shí)間、是否置頂、是否加精、所屬板塊、點(diǎn)擊量等?;貜?fù)表,包括的數(shù)據(jù)項(xiàng)有:回復(fù)內(nèi)容、回復(fù)時(shí)間、回復(fù)人、所屬問(wèn)題ID等3.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)根據(jù)上述數(shù)據(jù)庫(kù)的需求分析和概念結(jié)構(gòu)設(shè)計(jì)[9],設(shè)計(jì)了名稱為bbs_db的數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)bbs_db由下面多個(gè)表格組成,各個(gè)表的命名及字段命名[10]都是以相應(yīng)名稱的首字母組合而成,各個(gè)表格的設(shè)計(jì)結(jié)果如下表所示,每個(gè)表格表示在數(shù)據(jù)庫(kù)中相對(duì)應(yīng)的一個(gè)表。用戶表,如:表3-1表3-1用戶表列名字段類型長(zhǎng)度允許為空1uidint11不允許2unamevarchar255允許3passwordvarchar255允許4sexvarchar 255允許5phonevarchar255允許6qqvarchar255允許7emailvarchar255允許8photovarchar255允許9userableint1允許10questionvarchar255允許11answervarchar255允許問(wèn)題表,如:表3-2。表3-2問(wèn)題表列名字段類型長(zhǎng)度允許為空1Bbs_idint11不允許2Bbs_titlevarchar255允許3Bbs_contentvarchar255允許4Bbs_sendervarchar 255允許5Bbs_sendTimevarchar255允許6Bbs_idGoodvarchar255允許7Bbs_isGoodTimevarchar255允許8Bbs_blo_idint11允許9pointint11允許回復(fù)表,如:表3-3。表3-3回復(fù)表列名字段類型長(zhǎng)度允許為空1Reply_idint11不允許2Bbs_idvarchar255允許3Reply_contentvarchar255允許4Reply_timevarchar 255允許5replyervarchar255允許4系統(tǒng)界面設(shè)計(jì)4.1系統(tǒng)界面設(shè)計(jì)打開(kāi)網(wǎng)頁(yè)后的界面如下圖4-1,.從菜單欄中選擇進(jìn)行的操作。圖4-SEQ圖_4_-\*ARABIC1首頁(yè)系統(tǒng)前臺(tái)共主要分為7個(gè)模塊:第一部分:計(jì)算機(jī)類的問(wèn)題。如下圖4-2,圖4-SEQ圖_4_-\*ARABIC2計(jì)算機(jī)類問(wèn)題模塊第二部分:機(jī)械類問(wèn)題。如下圖4-3,圖4-SEQ圖_4_-\*ARABIC3機(jī)械類問(wèn)題模塊第三部分:工商類,如下圖4-4,圖4-SEQ圖_4_-\*ARABIC4工商類問(wèn)題模塊第四部分:用戶登錄注冊(cè)模塊,包括用戶的登錄,注冊(cè)和修改用戶信息。如下圖4-5,產(chǎn)品管理.圖4-SEQ圖_4_-\*ARABIC5用戶模塊第五部分:登錄模塊,。如下圖4-6,圖4-SEQ圖_4_-\*ARABIC6登錄第六部分:注冊(cè)模塊第七部分:個(gè)人信息模塊,包括查看個(gè)人信息,修改信息。5主要代碼5.1配置文件配置文件web.xml中主要用于配置各個(gè)servlet和驗(yàn)證登錄的過(guò)濾器。當(dāng)輸入的網(wǎng)頁(yè)或者跳轉(zhuǎn)出現(xiàn)錯(cuò)誤時(shí),就會(huì)自動(dòng)跳轉(zhuǎn)的錯(cuò)誤頁(yè)面,默認(rèn)打開(kāi)頁(yè)面為首頁(yè)。<servlet><servlet-name>action</servlet-name><servlet-class>org.apache.struts.action.ActionServlet</servlet-class><init-param><param-name>config</param-name><param-value>/WEB-INF/struts-config.xml</param-value></init-param><init-param><param-name>debug</param-name><param-value>3</param-value></init-param><init-param><param-name>detail</param-name><param-value>3</param-value></init-param><load-on-startup>0</load-on-startup></servlet><servlet><description>檢測(cè)郵箱是否存在</description><servlet-name>CheckMailServlet</servlet-name><servlet-class>com.servlet.CheckMailServlet</servlet-class></servlet> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list><servlet-mapping><servlet-name>action</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping><servlet-mapping><servlet-name>CheckServlet</servlet-name><url-pattern>/CheckServlet</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><error><error-code>404</error-code><location>/404.jsp</location><!--表示當(dāng)系統(tǒng)發(fā)生404就是不存在請(qǐng)求地址的錯(cuò)誤的時(shí)候,頁(yè)面跳轉(zhuǎn)到404.html頁(yè)面。--></error><error><error-code>500</error-code><location>/404.jsp</location><!--表示當(dāng)系統(tǒng)發(fā)生500也就是操作異常錯(cuò)誤的時(shí)候,頁(yè)面跳轉(zhuǎn)到error.jsp頁(yè)面。--></error></web-app>5.2部分功能代碼5.2.1ConnectionManager代碼主要作用是通過(guò)jdbc加載驅(qū)動(dòng),然后連接數(shù)據(jù)庫(kù),通過(guò)獲取Connection的對(duì)象來(lái)獲取得到操作數(shù)據(jù)庫(kù)的對(duì)象來(lái)操作數(shù)據(jù)庫(kù)privateConnectioncon; privatePreparedStatementpst; publicstaticConnectionManagermydb=newConnectionManager(); publicstaticConnectionManagerconn=newConnectionManager(); publicConnectionManager(){ try{ Class.forName("com.mysql.jdbc.Driver"); }catch(ClassNotFoundExceptione){ e.printStackTrace(); } } publicstaticConnectiongetConnection(){ Connectionconn=null; Stringurl="jdbc:mysql://localhost:3306/bbs_db"; try{ conn=DriverManager.getConnection(url,"root","rootadmin"); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } returnconn; }5.2.2Dao代碼 主要可以得到用戶的信息,并且可以修改用戶信息,通過(guò)數(shù)據(jù)庫(kù)的limit指令,可以實(shí)現(xiàn)分頁(yè)功能,得到較少的數(shù)據(jù)量加快程序的讀取速度,:publicUserBeangetUser(Stringuname){Connectionconn=null;Statementsta=null;ResultSetrs=null;ArrayListlist=newArrayList();UserBeanuser=newUserBean();Stringsql="selectphotofromuser_tbINNERJOINbbs_tbONuser_tb.uname='"+uname+"'";conn=ConnectionManager.getConnection();try{ sta=conn.createStatement(); rs=sta.executeQuery(sql); if(rs.next()){ user.setPhoto(rs.getString(1)); } }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } returnuser; } /** *得到我的帖子并分頁(yè) */ publicArrayListmyBbs(intnowpage,Stringuname){Stringsql="selectbbs_id,bbs_title,bbs_sendTime,bbs_blo_id,pointfrombbs_tbwherebbs_sender='"+uname+"'limit"+(now1)*15+",15"; Connectionconn=null; Statementsta=null; ResultSetrs=null; ArrayListarr=newArrayList(); try{ conn=ConnectionManager.getConnection(); sta=conn.createStatement(); rs=sta.executeQuery(sql); while(rs.next()){ BbsInfoBeanbbs=newBbsInfoBean(); bbs.setBbs_id(rs.getInt(1)); bbs.setBbs_title(rs.getString(2)); bbs.setBbs_sendTime(rs.getString(3)); bbs.setBbs_blo_id(rs.getInt(4)); bbs.setPoint(rs.getInt(5)); arr.add(bbs); } }catch(Exceptione){ //TODO:handleexception e.printStackTrace(); } returnarr; }5.2.3action代碼主要是邏輯結(jié)構(gòu)的控制,先判斷用戶輸入的賬號(hào)和密碼是否正確,如果正確跳轉(zhuǎn)到首頁(yè),如果錯(cuò)誤,則跳轉(zhuǎn)到登錄頁(yè)面重新登錄,并提示輸入的賬號(hào)或者密碼錯(cuò)誤,如果已經(jīng)登錄,可以查看自己的信息:publicActionForwardchangeSave(ActionMappingmapping,ActionFormform, HttpServletRequestrequest,HttpServletResponseresponse){ DynaActionFormuserForm=(DynaActionForm)form;//TODOAuto-generatedmethodstub Stringuname=userForm.getString("uname"); Stringpassword=userForm.getString("password"); UserBeanuser=newUserBean(); user.setUname(uname); user.setPassword(password); UserServerus=newUserServer(); booleanbool=us.changeSave(user); if(bool){ returnmapping.findForward("ok"); }else{ Stringstr="信息有誤,請(qǐng)確認(rèn)后再輸入"; request.setAttribute("error1",str); returnmapping.findForward("notcan"); } } publicActionForwarduserExit(ActionMappingmapping,ActionFormform, HttpServletRequestrequest,HttpServletResponseresponse){ request.getSession().removeAttribute("uname0"); HttpSessionsession=request.getSession(); UserBeanuser=(UserBean)session.getAttribute("user"); session.invalidate(); returnmapping.findForward("userExit"); } /** *得到用戶的個(gè)人信息 *@parammapping *@paramform *@paramrequest *@paramresponse *@return */ publicActionForwardgetUserInfo(ActionMappingmapping,ActionFormform, HttpServletRequestrequest,HttpServletResponseresponse){Stringuname=(String)request.getSession().getAttribute("uname0"); UserBeanuser=newUserBean(); user.setUname(uname); UserServerus=newUserServer(); user=us.getUserInfo(user); request.setAttribute("user",user); returnmapping.findForward("showInfo"); }5.2.4Service代碼主要是把dao層的方法加進(jìn)去,實(shí)現(xiàn)了業(yè)務(wù)分層,這樣做的目的是讓程序更安全,并且思路更清晰,讓程序的結(jié)構(gòu)更整齊,代碼的可讀性更高 //查詢各版塊帖子 publicArrayListgetAll(intnowpage,intbbs_blo_id) { returnnewBbsDAO().getAll(nowpage,bbs_blo_id); } /** *增加點(diǎn)擊量 */ publicbooleanaddPoint(BbsInfoBeanbbs){ returnnewBbsDAO().addPoint(bbs); } //得到各版塊帖子的條數(shù) publicintgetCount(intbbs_blo_id){ returnnewMBbsDAO().getCount(bbs_blo_id); } //得到我的帖子并分頁(yè) publicArrayListmyBbs(intnowpage,Stringuname) { returnnewBbsDAO().myBbs(nowpage,uname); } //得到我的帖子的條數(shù) publicintgetCount(Stringuname){ returnnewBbsDAO().getCount(uname); } publicbooleandelete(BbsInfoBeanbbs){ returnnewBbsDAO().delete(bbs); }5.2.5js代碼 (部分)主要是對(duì)頁(yè)面上提交內(nèi)容的各種判斷:functioncreateXMLHttp(){ if(window.XMLHttpRequest){ xmlHttp=newXMLHttpRequest(); }else{ xmlHttp=newActiveXObject("Microsoft.XMLHTTP"); } } functioncheckcode(code){ createXMLHttp(); xmlHttp.open("POST","checkCode?code="+code); xmlHttp.onreadystatechange=checkCodeCallback; xmlHttp.send(null); document.getElementById("msg2").innerHTML="正在發(fā)送..."; } functioncheckCodeCallback(){ if(xmlHttp.readyState==4){ if(xmlHttp.status==200){ vartext=xmlHttp.responseText; if(text=="false"){ flag2=false; document.getElementById("msg2").innerHTML="<fontcolor=red>X</font>"; }else{ flag2=true; document.getElementById("msg2").innerHTML="<fontcolor=green>√</font>"; } } } } functioncheckFrom2(){ returnflag2; } functioncheckMail(mail){ createXMLHttp(); xmlHttp.open("POST","CheckMailServlet?mail="+mail); xmlHttp.onreadystatechange=checkEmailCallback; xmlHttp.send(null); document.getElementById("msg1").innerHTML="正在發(fā)送..."; } functioncheckEmailCallback(){ if(xmlHttp.readyState==4){ if(xmlHttp.status==200){ vartext=xmlHttp.responseText; if(text=="false"){ flag1=false; document.getElementById("msg1").innerHTML="<fontcolor=red>此郵箱已存在</font>"; }else{ flag1=true; document.getElementById("msg1").innerHTML="此郵箱可以注冊(cè)"; } } } } functioncheckFrom1()

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論