基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)畢業(yè)論文(設(shè)計(jì))_第1頁(yè)
基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)畢業(yè)論文(設(shè)計(jì))_第2頁(yè)
基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)畢業(yè)論文(設(shè)計(jì))_第3頁(yè)
基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)畢業(yè)論文(設(shè)計(jì))_第4頁(yè)
基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)畢業(yè)論文(設(shè)計(jì))_第5頁(yè)
已閱讀5頁(yè),還剩60頁(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)介

玉林師范學(xué)院本科生畢業(yè)論文(設(shè)計(jì))基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)ImplicamentionofTeachingManagementSystemwithJSP

畢業(yè)設(shè)計(jì)(論文)原創(chuàng)性聲明和使用授權(quán)說(shuō)明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設(shè)計(jì)(論文),是我個(gè)人在指導(dǎo)教師的指導(dǎo)下進(jìn)行的研究工作及取得的成果。盡我所知,除文中特別加以標(biāo)注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過(guò)的研究成果,也不包含我為獲得及其它教育機(jī)構(gòu)的學(xué)位或?qū)W歷而使用過(guò)的材料。對(duì)本研究提供過(guò)幫助和做出過(guò)貢獻(xiàn)的個(gè)人或集體,均已在文中作了明確的說(shuō)明并表示了謝意。作者簽名:日期:指導(dǎo)教師簽名:日期:使用授權(quán)說(shuō)明本人完全了解大學(xué)關(guān)于收集、保存、使用畢業(yè)設(shè)計(jì)(論文)的規(guī)定,即:按照學(xué)校要求提交畢業(yè)設(shè)計(jì)(論文)的印刷本和電子版本;學(xué)校有權(quán)保存畢業(yè)設(shè)計(jì)(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務(wù);學(xué)校可以采用影印、縮印、數(shù)字化或其它復(fù)制手段保存論文;在不以贏利為目的前提下,學(xué)??梢怨颊撐牡牟糠只蛉?jī)?nèi)容。作者簽名:日期:

基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)摘要J2EE技術(shù)無(wú)疑是當(dāng)今因特網(wǎng)應(yīng)用的最佳技術(shù)方案之一,圍繞J2EE技術(shù)的應(yīng)用性,也產(chǎn)生了大量的Web開(kāi)發(fā)框架、中間層開(kāi)發(fā)框架、數(shù)據(jù)層開(kāi)發(fā)框架,它們極大地提升了J2EE技術(shù)的易用性.本文描述了J2EE的相關(guān)技術(shù),比如Servlet,JSP,Struts,Hibernate等,并用這些技術(shù)完成一個(gè)基于Web的教學(xué)管理系統(tǒng).本文介紹了在myeclipse9.0環(huán)境下采用MVC開(kāi)發(fā)模式開(kāi)發(fā)一個(gè)教務(wù)管理系統(tǒng)的過(guò)程.文章介紹了教務(wù)管理信息系統(tǒng)的系統(tǒng)分析部分,包括需求分析和安全性分析;系統(tǒng)設(shè)計(jì)部分主要介紹了系統(tǒng)功能設(shè)計(jì)和數(shù)據(jù)庫(kù)設(shè)計(jì)及代碼設(shè)計(jì);系統(tǒng)實(shí)現(xiàn)與測(cè)試部分說(shuō)明了幾個(gè)主要模塊的算法,本系統(tǒng)界面友好,操作簡(jiǎn)單,比較實(shí)用關(guān)鍵詞:Servlet,JSP,Struts,Hibernate,MVC,教學(xué)管理系統(tǒng)ImplicamentionofTeachingManagementSystemwithJSPImformationmanagementandImformationSystem2008ZhongXinxueSupervisorGongYutongAbstractThereisnodoubtthatJ2EEtechnologyisoneofthebestmethodsoftoday'sInternetapplications,aroundtheJ2EEtechnologyapplication,alargenumberofWebdevelopmentframework,middlelayerdevelopmentframeworkanddatelayerdevelopmentframeworkturnoutwhichgreatlyenhancetheJ2EEtechnologyEaseofuse.ThistextdescribedthetechnologyrelatetoJ2EE,suchasServlet,JSP,Struts,Hibernateandsoon,thenworkoutaSystembaseonWebusethesetechnology.Thisarticleintroducedenvironmentusesmyeclipse9.0;usetheMVC“Modle-View-Controller”development-modletoappliesthedevelopment;thestrategydevelopsamanagementinformationsystemtheprocess.Throughanalyzesmyschooltocountthebranchdepartmenttheeducationaladministrationmanagementinsufficiency,foundedasetofeffectiveusecomputertocarryontheeducationaladministrationinformationmanagementtheplan.Thearticleintroducedtheeducationaladministrationmanagementinformationsystemsystemanalysispart,includingfeasibilityanalysis,dataflowanalysisanddemandanalysisandsoon;Thesystemdesignpartmainlyintroducedthesystemfunctiondesignandthedatabasedesignandthecodedesign;Thesystemrealizationpartexplainedseveralmainmodulealgorithms,thissystemcontactsurfaceisfriendly,theoperationissimple,quitepractical.Keywords:Servlet,JSP,Struts,Hibernate,MVC,TeachingManagementSystem目錄1引言 11.1選題的背景 11.2目的和意義 22開(kāi)發(fā)技術(shù)及環(huán)境 32.1Servlet簡(jiǎn)介 32.1.1什么是Servlet 32.1.2Servlet技術(shù)的特點(diǎn) 32.2JSP技術(shù)概述 42.2.1JSP技術(shù)的產(chǎn)生背景 42.2.2JSP技術(shù)的優(yōu)勢(shì)和弱勢(shì) 42.2.3JSP技術(shù)的工作原理 52.3Struts概述 52.3.1Struts的由來(lái)和發(fā)展 52.3.2Struts的MVC模式簡(jiǎn)介 52.3.3Struts的優(yōu)缺點(diǎn) 72.3.4Struts的工作流程 82.4Hibernate數(shù)據(jù)庫(kù)持久化技術(shù) 92.4.1Hibernate簡(jiǎn)介 92.4.2Hibernate的工作流程 102.5開(kāi)發(fā)環(huán)境 102.5.1Eclipse開(kāi)發(fā)工具 102.5.2Tomcat服務(wù)器 113系統(tǒng)分析 123.1需求分析 123.1.1目標(biāo)系統(tǒng)功能說(shuō)明 123.1.2用戶需求分析 123.2系統(tǒng)安全性 124系統(tǒng)設(shè)計(jì) 144.1數(shù)據(jù)庫(kù)設(shè)計(jì) 144.1.1數(shù)據(jù)庫(kù)簡(jiǎn)介 144.1.2數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn) 174.2功能設(shè)置 234.2.1主要模塊的功能說(shuō)明 234.2.2系統(tǒng)功能模塊圖 234.3控制處理層 245系統(tǒng)實(shí)現(xiàn)與測(cè)試 255.1業(yè)務(wù)邏輯層各Bean功能 255.2 系統(tǒng)界面 275.3搭建系統(tǒng)運(yùn)行環(huán)境 33小結(jié) 34致謝 34參考文獻(xiàn) 35附錄 36鐘新雪基于JSP的教學(xué)管理系統(tǒng)開(kāi)發(fā)與實(shí)現(xiàn)玉林師范學(xué)院本科生畢業(yè)論文PAGE60PAGE591引言教學(xué)管理系統(tǒng)是集計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)通信技術(shù)為一體的信息系統(tǒng)工程,通過(guò)JSP開(kāi)發(fā)基于Web的教學(xué)管理系統(tǒng),一方面它面向包括學(xué)生、教師和教學(xué)管理人員,大大方便學(xué)校的教務(wù)管理,另一方面它通過(guò)數(shù)據(jù)庫(kù)管理學(xué)校的龐大信息量,保證了數(shù)據(jù)的準(zhǔn)確、及時(shí)、全面、詳實(shí).教學(xué)管理系統(tǒng)的開(kāi)發(fā)過(guò)程是以軟件工程的思想為指導(dǎo),經(jīng)過(guò)可行性研究、需求分析、總體分析、詳細(xì)設(shè)計(jì)等主要階段而進(jìn)行的規(guī)范的開(kāi)發(fā)過(guò)程.目前開(kāi)發(fā)Web應(yīng)用程序主要有C/S(客戶機(jī)/服務(wù)器)和B/S(瀏覽器/服務(wù)器)兩種模式.B/S設(shè)計(jì)模式為我們提供了系統(tǒng)設(shè)計(jì)的基本思想和基本方向.相對(duì)于C/S模式來(lái)講,B/S模式讓客戶端不安裝軟件通過(guò)對(duì)服務(wù)端的訪問(wèn)就可以得到所需信息,從而使網(wǎng)頁(yè)更加便于瀏覽和管理,符合使用者對(duì)使用系統(tǒng)的要求,也就是說(shuō)用戶無(wú)需安裝客戶端,只要通過(guò)瀏覽器就可以訪問(wèn)相關(guān)服務(wù);它在系統(tǒng)升級(jí)或維護(hù)的時(shí)候,只要在Web服務(wù)器中集中改動(dòng),用戶在下一次頁(yè)面刷新時(shí)就能立即得到反饋,而對(duì)于那些在服務(wù)端運(yùn)行的邏輯、改動(dòng)對(duì)于用戶來(lái)說(shuō)是透明的的;此外,就數(shù)據(jù)遷移和安全性等方面來(lái)講,B/S模式也更加具有優(yōu)勢(shì).學(xué)校作為一個(gè)復(fù)雜的機(jī)構(gòu),要實(shí)現(xiàn)其日常教學(xué)活動(dòng)龐大數(shù)據(jù)量的有效管理,借助于一個(gè)實(shí)用的教學(xué)管理系統(tǒng)是必不可少的.與教學(xué)活動(dòng)相關(guān)的角色大致可分為學(xué)生、教師和教學(xué)管理人員三類.而這三類用戶所具備的權(quán)限、所關(guān)心的問(wèn)題及所需要的資料也互不相同,這就需要給他們提供不同的操作界面,規(guī)定他們的對(duì)應(yīng)操作.因此,教學(xué)管理系統(tǒng)的主要功能也必須針對(duì)這三類主要角色進(jìn)行相對(duì)應(yīng)的設(shè)計(jì).1.1選題的背景隨著數(shù)據(jù)庫(kù)技術(shù)、網(wǎng)絡(luò)技術(shù)和科學(xué)管理方法的發(fā)展,計(jì)算機(jī)在管理上的應(yīng)用日益廣泛,管理信息系統(tǒng)逐漸成熟起來(lái),并且給管理帶來(lái)了新的革命.管理信息系統(tǒng)是以人為主導(dǎo)的,通過(guò)運(yùn)用計(jì)算機(jī)、網(wǎng)絡(luò)通信設(shè)備及其它辦公設(shè)備對(duì)信息進(jìn)行收集、運(yùn)輸、加工、存儲(chǔ)、更新、維護(hù),支持高層決策、中層控制、基層運(yùn)作的人機(jī)系統(tǒng).管理信息系統(tǒng)最大的特點(diǎn)是高度集中,能將組織中的數(shù)據(jù)和信息集中起來(lái),進(jìn)行快速處理,統(tǒng)一使用,利用定量化的科學(xué)管理方法,通過(guò)預(yù)測(cè)、計(jì)劃優(yōu)化、管理、調(diào)節(jié)和控制等手段來(lái)支持決策.一個(gè)中心數(shù)據(jù)庫(kù)和計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)是管理信息系統(tǒng)(ManagemantInformationSystem,MIS)的重要標(biāo)志.MIS的處理方式是在數(shù)據(jù)庫(kù)和網(wǎng)絡(luò)基礎(chǔ)上的分布式處理.隨著計(jì)算機(jī)網(wǎng)絡(luò)和通訊技術(shù)的發(fā)展,不僅能把組織內(nèi)部的各級(jí)管理連接起來(lái),而且能夠克服地理界限,把分散在不同地區(qū)的計(jì)算機(jī)網(wǎng)絡(luò)互連,形成跨地區(qū)的各種業(yè)務(wù)信息系統(tǒng)和管理信息系統(tǒng).目前,雖然有許多學(xué)校已開(kāi)始運(yùn)用計(jì)算機(jī)進(jìn)行學(xué)校教務(wù)的管理.學(xué)校的教務(wù)管理系統(tǒng)必須是一個(gè)完整統(tǒng)一、技術(shù)先進(jìn)、高效穩(wěn)定、安全可靠的系統(tǒng).根據(jù)國(guó)內(nèi)大學(xué)的現(xiàn)在管理模式,結(jié)合國(guó)際新的思想觀念,在校園網(wǎng)絡(luò)環(huán)境下建設(shè)先進(jìn)的、與國(guó)際水平接軌的信息化管理平臺(tái).提高學(xué)校管理工作的現(xiàn)代化水平,使之成為學(xué)校公共信息服務(wù)體系的重要組成部分.教學(xué)教務(wù)管理系統(tǒng)是高校管理信息系統(tǒng)建設(shè)的重要組成部分,是提高教學(xué)管理的質(zhì)量和效益乃至建設(shè)世界知名的高水平的大學(xué)的關(guān)鍵環(huán)節(jié).教學(xué)教務(wù)信息處理的電腦化、網(wǎng)絡(luò)化,也是實(shí)現(xiàn)學(xué)校管理現(xiàn)代化和信息化的重要內(nèi)容.1.2目的和意義隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,計(jì)算機(jī)作為知識(shí)經(jīng)濟(jì)時(shí)代的產(chǎn)物,已被廣泛應(yīng)用于社會(huì)各個(gè)行業(yè)和領(lǐng)域.目前,我國(guó)的科技水平高速發(fā)展,計(jì)算機(jī)作為今天使用最廣的現(xiàn)代化工具已深入到各個(gè)領(lǐng)域,并且正在成為未來(lái)社會(huì)——信息社會(huì)的重要支柱.在這樣的大背景下,現(xiàn)代學(xué)校教務(wù)的管理方式,資源建設(shè)等方面都發(fā)生了重大變化,這種變化表現(xiàn)在教務(wù)工作,管理和服務(wù)平臺(tái)發(fā)生的變化,教務(wù)管理不再是傳統(tǒng)的手工操作,人工管理,而是全面實(shí)行計(jì)算機(jī)管理.此次畢業(yè)設(shè)計(jì)使我提高了自身解決實(shí)際問(wèn)題的能力.但由于本人知識(shí)水有限,系統(tǒng)設(shè)計(jì)中還存在著很多不足,請(qǐng)各位領(lǐng)導(dǎo)批評(píng)指正,以便我今后改進(jìn).此外,該系統(tǒng)能夠順利的完成離不開(kāi)各位老師對(duì)我的幫助,在此深表感謝.2開(kāi)發(fā)技術(shù)及環(huán)境2.1Servlet簡(jiǎn)介2.1.1什么是ServletServlet(Java服務(wù)器小程序)是用Java編寫的服務(wù)器端程序,是由服務(wù)器端調(diào)用和執(zhí)行的、按照Servlet自身規(guī)范編寫的Java類.Servlet可以看成是Java編寫的CGI,但是它的功能和性能比CGI更加強(qiáng)大.Servlet是使用JavaServlet應(yīng)用程序設(shè)計(jì)接口(API)及相關(guān)類和方法的Java程序.除了JavaServletAPI,Servlet還可以用于擴(kuò)展和添加到API的Java類軟件包.它最常見(jiàn)的用途是擴(kuò)展Web服務(wù)器,提供非常安全的、可移植的、易于使用的CGI替代品.它是一種動(dòng)態(tài)加載的模塊,為來(lái)自Web服務(wù)器的請(qǐng)求提供服務(wù).它完全運(yùn)行在Java虛擬機(jī)上.由于它在服務(wù)器端運(yùn)行,因此它不依賴于瀏覽器的兼容性.2.1.2Servlet技術(shù)的特點(diǎn)Servlet是一個(gè)Java的類,能夠?qū)崿F(xiàn)除了圖形界面外的Java的所有功能,總的來(lái)說(shuō),它有以下優(yōu)勢(shì):1、可移植性它可以在不同的操作系統(tǒng)平臺(tái)和不同的應(yīng)用服務(wù)器平臺(tái)下移植.2、功能強(qiáng)大可以使用JavaAPI核心的所有功能.3、安全有幾個(gè)不同的層次為Servlet的安全提供了保障.4、簡(jiǎn)潔Servlet代碼面向?qū)ο?,在封閉方面具有先天的優(yōu)勢(shì).5、集成Servlet和服務(wù)器緊密集成,它們可以密切合作完成特定的任務(wù).6、模塊化第一個(gè)Servlet可以執(zhí)行一個(gè)特定的任務(wù),并且可以將它們并在一起工作.7、擴(kuò)展性Servlet的接口設(shè)計(jì)得非常簡(jiǎn)單,使它具有很強(qiáng)的擴(kuò)展性.8、高效耐久Servlet一旦載入,它就駐留在內(nèi)存中,這樣加快了響應(yīng)的速度.2.1.3Servlet的生命周期Servlet部署在容器里,它的生命周期由容器管理,一般可概括為以下幾個(gè)步驟:1、裝載Servlet這項(xiàng)操作一般是動(dòng)態(tài)執(zhí)行的.2、servlet容器創(chuàng)建servlet的一個(gè)實(shí)例.

3、容器調(diào)用該實(shí)例的init()方法.

4、服務(wù)如果容器對(duì)該servlet有請(qǐng)求,則調(diào)用此實(shí)例的service()方法.

5、銷毀通過(guò)調(diào)用Servlet的destory()方法銷毀Servlet.2.2JSP技術(shù)概述2.2.1JSP技術(shù)的產(chǎn)生背景JSP(JavaServerPages)是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),該技術(shù)為創(chuàng)建顯示動(dòng)態(tài)生成內(nèi)容的Web頁(yè)面提供了一個(gè)簡(jiǎn)捷而快速的方法.JSP技術(shù)的設(shè)計(jì)目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開(kāi)發(fā)工具共同工作.JSP規(guī)范是Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開(kāi)發(fā)工具供應(yīng)商間廣泛合作的結(jié)果.在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP標(biāo)記(tag),就構(gòu)成了JSP網(wǎng)頁(yè)(*.jsp).由于JSP構(gòu)建在Servlet上,所以它有Servlet所有強(qiáng)大的功能.JSP基于強(qiáng)大的Java語(yǔ)言,具有良好的伸縮性,與JavaEnterpriseAPI緊密地集成在一起,在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)領(lǐng)域具有得天獨(dú)厚的優(yōu)勢(shì).從JSP這幾年的發(fā)展來(lái)看,JSP已經(jīng)取得了巨大的成功,它通過(guò)和EJB等J2EE組件進(jìn)行集成,可以編寫出具有大的伸縮性、高負(fù)載的企業(yè)級(jí)應(yīng)用,它從多個(gè)方面加速了動(dòng)態(tài)Web應(yīng)用頁(yè)面的開(kāi)發(fā).2.2.2JSP技術(shù)的優(yōu)勢(shì)和弱勢(shì)1JSP技術(shù)的優(yōu)勢(shì)1、一次編寫,到處運(yùn)行.2、系統(tǒng)的多平臺(tái)支持.3、強(qiáng)大的可伸縮性.4、多樣化和功能強(qiáng)大的開(kāi)發(fā)工具支持.2JSP技術(shù)的弱勢(shì)1、跨平臺(tái)的功能和極度的伸縮能力,極大地增加了產(chǎn)品的復(fù)雜性.2、它需要一定的硬盤空間來(lái)存儲(chǔ)一系列的.Java文件、.class文件及對(duì)應(yīng)的版本文件.3JSP內(nèi)置對(duì)象

JSP包括九種內(nèi)置對(duì)象:request對(duì)象、response對(duì)象、pageContext對(duì)象、Session對(duì)象、application對(duì)象、out對(duì)象、config對(duì)象、page對(duì)象以及exception對(duì)象,其中通過(guò)application對(duì)象和session對(duì)象可以實(shí)現(xiàn)不同頁(yè)面間的數(shù)據(jù)共享.2.2.3JSP技術(shù)的工作原理Web服務(wù)器在遇到訪問(wèn)JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),首先執(zhí)行其中的程序片段,然后將執(zhí)行結(jié)果以HTML格式返回給客戶.程序片段可以操作數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)以及發(fā)送email等等,這就是建立動(dòng)態(tài)網(wǎng)站所需要的功能.所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,對(duì)客戶瀏覽器的要求最低,可以實(shí)現(xiàn)無(wú)Plugin,無(wú)ActiveX,無(wú)JavaApplet,甚至無(wú)Frame.2.3Struts概述2.3.1Struts的由來(lái)和發(fā)展Struts框架工具是Apache基金會(huì)Jakarta項(xiàng)目中推出的一個(gè)子項(xiàng)目.Struts在英文中是支架、支撐的意思,這也體現(xiàn)出Struts在開(kāi)發(fā)Web應(yīng)用程序過(guò)程所起到的重要作用,Struts為Web應(yīng)用提供了通用的框架,讓開(kāi)發(fā)人員可以把主要精力集中在如何解決實(shí)際業(yè)務(wù)問(wèn)題上,與此同時(shí)Struts框架也允許開(kāi)發(fā)人員根據(jù)實(shí)際需要進(jìn)行擴(kuò)展和定制,從而可以更好的適應(yīng)用戶的需求.采用Struts可以簡(jiǎn)化遵循MVC設(shè)計(jì)模式的Web應(yīng)用的開(kāi)發(fā)工作,很好地實(shí)現(xiàn)代碼重用,使開(kāi)發(fā)人員從一些繁瑣的工作中解脫出來(lái),快速開(kāi)發(fā)能夠充分發(fā)揮JSP/Servlet優(yōu)點(diǎn)、并具有強(qiáng)可擴(kuò)展性的Web應(yīng)用.總之,Struts的出現(xiàn)使得Web應(yīng)用的開(kāi)發(fā)過(guò)程大大簡(jiǎn)化,從而能夠縮短開(kāi)發(fā)周期、提高開(kāi)發(fā)效率.2.3.2Struts的MVC模式簡(jiǎn)介模型-視圖-控制器(MVC)是80年代Smalltalk-80出現(xiàn)的一種軟件設(shè)計(jì)模式,現(xiàn)在已經(jīng)被廣泛的使用.

1、模型(Model)

模型是應(yīng)用程序的主體部分.模型表示業(yè)務(wù)數(shù)據(jù),或者業(yè)務(wù)邏輯.

2、視圖(View)

視圖是應(yīng)用程序中用戶界面相關(guān)的部分,是用戶看到并與之交互的界面.

3、控制器(controller)

控制器工作就是根據(jù)用戶的輸入,控制用戶界面數(shù)據(jù)顯示和更新model對(duì)象狀態(tài).

圖2.1MVC組件類型的關(guān)系和功能Fig2.1RelationsandfunctionsofMVCCATID

MVC式的出現(xiàn)不僅實(shí)現(xiàn)了功能模塊和顯示模塊的分離,同時(shí)它還提高了應(yīng)用系統(tǒng)的可維護(hù)性、可擴(kuò)展性、可移植性和組件的可復(fù)用性.盡管MVC設(shè)計(jì)模式很早就提出,但由于缺乏相關(guān)支持,在Web開(kāi)發(fā)中引入MVC卻相當(dāng)困難,直到基于J2EE的JSPModel2問(wèn)世時(shí)才得以改觀.下面對(duì)JSPModel1與JSPModel2進(jìn)行簡(jiǎn)單介紹.

圖2.2JSPModel1(JSP+JavaBean)的數(shù)據(jù)傳遞關(guān)系圖

Fig2.2DatatransferofJSPModle1(JSP+JavaBean+Servlet)

圖2.3JSPModel2(JSP+JavaBean+Servlet)的數(shù)據(jù)傳遞關(guān)系圖Fig2.3DatatransferofJSPModle2(JSP+JavaBean+Servlet)比較兩種模式,我們不難發(fā)現(xiàn)JSPModel2顯然比JSPModel1層次關(guān)系更加清楚,開(kāi)發(fā)的頁(yè)面也更易于維護(hù).在這種模式中,各組件的分工關(guān)系非常明確,JSP技術(shù)用于顯示,充當(dāng)了視圖的角色,Servlet用于執(zhí)行業(yè)務(wù)邏輯,它相當(dāng)于控制器的角色,JavaBean組件用于表示數(shù)據(jù),相當(dāng)于模型的角色.盡管如此,JSPModel2仍不夠好,它容易使系統(tǒng)出現(xiàn)多個(gè)Controller,并且對(duì)頁(yè)面導(dǎo)航的處理比較復(fù)雜.Struts就是在JSPModel2的基礎(chǔ)上實(shí)現(xiàn)的一個(gè)MVC架構(gòu).它只有一個(gè)中心控制器,他采用XML定制轉(zhuǎn)向的URL.采用Action來(lái)處理邏輯,是對(duì)JSPModel2的一個(gè)極大改進(jìn)[3].2.3.3Struts的優(yōu)缺點(diǎn)優(yōu)點(diǎn):Struts跟Tomcat、Turbine等諸多Apache項(xiàng)目一樣,是開(kāi)源軟件,使開(kāi)發(fā)者能更深入的了解其內(nèi)部實(shí)現(xiàn)機(jī)制,這是它的一大優(yōu)點(diǎn).

除此之外,Struts的優(yōu)點(diǎn)主要集中體現(xiàn)在兩個(gè)方面:Taglib和頁(yè)面導(dǎo)航.Taglib是Struts的標(biāo)記庫(kù),靈活動(dòng)用,能大大提高開(kāi)發(fā)效率;而頁(yè)面導(dǎo)航則使系統(tǒng)的脈絡(luò)更加清晰,通過(guò)一個(gè)配置文件,即可把握整個(gè)系統(tǒng)各部分之間的聯(lián)系,這對(duì)于后期的維護(hù)有著莫大的好處‘尤其是當(dāng)另一批開(kāi)發(fā)者接手這個(gè)項(xiàng)目時(shí),這種優(yōu)勢(shì)體現(xiàn)得更加明顯.

缺點(diǎn):Taglib是Struts的一大優(yōu)勢(shì),但對(duì)于初學(xué)者而言,卻需要一個(gè)持續(xù)學(xué)習(xí)的過(guò)程,甚至還會(huì)打亂你網(wǎng)頁(yè)編寫的習(xí)慣,但是,當(dāng)你習(xí)慣了它時(shí),你會(huì)覺(jué)得它真的很棒.

Struts將MVC的Controller一分為三,在獲得結(jié)構(gòu)更加清晰的同時(shí),也增加了系統(tǒng)的復(fù)雜度.

Struts從產(chǎn)生到現(xiàn)在還不到半年,但已逐步越來(lái)越多運(yùn)用于商業(yè)軟件.雖然它現(xiàn)在還有不少缺點(diǎn),但它是一種非常優(yōu)秀的J2EE

MVC實(shí)現(xiàn)方式.2.3.4Struts的工作流程在WEB啟動(dòng)時(shí)就會(huì)中載并初始化ActionServle在ActionServletstruts-config.xml文件中讀取配置信息,把它們存放到各種配置對(duì)象中.當(dāng)ActionServlet接收到一個(gè)客戶請(qǐng)求時(shí),它的執(zhí)行過(guò)程大致如下:1、檢索和用戶請(qǐng)求匹配的ActionMapping實(shí)例,如果不存在,就返回用戶請(qǐng)求路徑無(wú)效.

2、如果ActionForm實(shí)例不存在,就創(chuàng)建一個(gè)ActionForm對(duì)象,把客戶提交表單數(shù)據(jù)保存到ActionForm對(duì)象中.3、根據(jù)配置住處決定是否需要表單驗(yàn)證,如果需要驗(yàn)證,就調(diào)用ActionForm扔validate()方法.

4、如果ActionForm的validate()方法返回null或返回一個(gè)不包含ActionMessage的ActionError對(duì)象,就表示表單驗(yàn)證成功.

5、ActionServlet根據(jù)ActionMapping實(shí)例包含的映射住處決定將請(qǐng)求轉(zhuǎn)發(fā)給哪個(gè)Action.如果相應(yīng)的Action實(shí)例不存在,就先創(chuàng)建這個(gè)實(shí)例,然后調(diào)用Action的execrte()方法.

6、Action的execute()方法返回一個(gè)ActionForward對(duì)象,ActionServlet再把客戶請(qǐng)求轉(zhuǎn)發(fā)給ActionForward對(duì)象指向的JSP組件.

7、ActionForward對(duì)象指向的JSP組件生成動(dòng)態(tài)網(wǎng)頁(yè),返回給客戶[4].下圖是Struts的工作流程,所有的請(qǐng)求都提交給ActionServlet圖2.4struts工作流程圖Fig2.4Workflowofstruts2.4Hibernate數(shù)據(jù)庫(kù)持久化技術(shù)2.4.1Hibernate簡(jiǎn)介Hibernate是一個(gè)面向Java環(huán)境的對(duì)象/關(guān)系數(shù)據(jù)庫(kù)映射工具.它是使用GNU寬通用公共許可證發(fā)行的自由、開(kāi)源的軟件,它為面向?qū)ο蟮念I(lǐng)域模型到傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)的映射,提供了一個(gè)使用方便的框架.Hibernate不僅僅管理Java類到數(shù)據(jù)庫(kù)表的映射(包括Java數(shù)據(jù)類型到SQL數(shù)據(jù)類型的映射),還提供了面向?qū)ο蟮臄?shù)據(jù)查詢檢索機(jī)制,可以大幅度減少開(kāi)發(fā)時(shí)人工使用SQL和JDBC處理數(shù)據(jù)的時(shí)間.Hibernate的目標(biāo)是對(duì)于開(kāi)發(fā)者通常的數(shù)據(jù)持久化相關(guān)的編程任務(wù),解放其中的95%.對(duì)于以數(shù)據(jù)為中心的程序來(lái)說(shuō),它們往往只在數(shù)據(jù)庫(kù)中使用存儲(chǔ)過(guò)程來(lái)實(shí)現(xiàn)商業(yè)邏輯.Hibernate可能不是最好的解決方案,但對(duì)于那些在基于Java的中間層應(yīng)用中實(shí)現(xiàn)面向?qū)ο蟮臉I(yè)務(wù)模型和商業(yè)邏輯的應(yīng)用Hibernate是最有用的.2.4.2Hibernate的工作流程在Java應(yīng)用中使用Hibernate,大致包括以下步驟:1、創(chuàng)建Hibernate配置文件.2、創(chuàng)建持久類.3、創(chuàng)建對(duì)象-關(guān)系-映射文件.4、通過(guò)HibernateAPI編寫訪問(wèn)數(shù)據(jù)庫(kù)的代碼.2.5開(kāi)發(fā)環(huán)境2.5.1Eclipse開(kāi)發(fā)工具Eclipse是目前主流的Web應(yīng)用程序開(kāi)發(fā)工具之一,它是一個(gè)開(kāi)放源代碼的、與NetBeans、SunONEStudio和BorlandJbuilder類似的一種基于Java的整合型可擴(kuò)展開(kāi)發(fā)平臺(tái),也是目前最著名的開(kāi)源項(xiàng)目之一.就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境.幸運(yùn)的是,Eclipse附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java開(kāi)發(fā)工具(JavaDevelopmentTools,JDT).它將包括Spring、Struts、Hibernate等在內(nèi)主流的開(kāi)發(fā)框架以插件的形式嵌入其中,大大減少了程序開(kāi)發(fā)人員的工作量.根據(jù)Eclipse的體系結(jié)構(gòu),通過(guò)開(kāi)發(fā)插件,它能擴(kuò)展到任何語(yǔ)言的開(kāi)發(fā),甚至能成為圖片繪制的工具.盡管Eclipse是使用Java語(yǔ)言開(kāi)發(fā)的,但它的用途并不限于Java語(yǔ)言;例如,支持諸如C/C++、COBOL和Eiffel等編程語(yǔ)言的插件已經(jīng)可用,或預(yù)計(jì)會(huì)推出.Eclipse框架還可用來(lái)作為與軟件開(kāi)發(fā)無(wú)關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng).此外,Eclipse還支持目前流行的多種數(shù)據(jù)庫(kù)管理軟件,如SQL、Oracle等,是一個(gè)功能強(qiáng)大,不可多得的集成開(kāi)發(fā)工具.由于其開(kāi)放源碼的特性,任何人都可以免費(fèi)得到,并可以在此基礎(chǔ)上開(kāi)發(fā)各自的插件,因此越來(lái)越受人們關(guān)注.目前最新且功能較為穩(wěn)定的版本是Eclipse3.3,插件版本是MyEclipse6.0.1.2.5.2Tomcat服務(wù)器1Tomcat的產(chǎn)生和發(fā)展Tomcat是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP程序的首選.自從JSP發(fā)布之后,推出了各式各樣的JSP引擎.ApacheGroup在完成GNUJSP1.0的開(kāi)發(fā)以后,開(kāi)始考慮在SUN的JSWDK基礎(chǔ)上開(kāi)發(fā)一個(gè)可以直接提供Web服務(wù)的JSP服務(wù)器,當(dāng)然同時(shí)也支持Servlet,這樣Tomcat就誕生了.Tomcat是jakarta項(xiàng)目中的一個(gè)重要的子項(xiàng)目,又是sun公司官方推薦的servlet和jsp容器,因?yàn)槠浼夹g(shù)先進(jìn)、性能穩(wěn)定,也受到其越來(lái)越多的軟件公司和開(kāi)發(fā)人員的喜愛(ài).servlet和jsp的最新規(guī)范都可以在tomcat的新版本中得到實(shí)現(xiàn).其次,Tomcat是完全免費(fèi)的軟件,任何人都可以從互聯(lián)網(wǎng)上自由地下載.

2在Tomcat中部署Web應(yīng)用程序在Tomcat中,應(yīng)用程序的部署很簡(jiǎn)單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會(huì)自動(dòng)檢測(cè)到這個(gè)文件,并將其解壓.你在瀏覽器中訪問(wèn)這個(gè)應(yīng)用的Jsp時(shí),通常第一次會(huì)很慢,因?yàn)門omcat要將Jsp轉(zhuǎn)化為Servlet文件,然后編譯.編譯以后,訪問(wèn)將會(huì)很快.3系統(tǒng)分析3.1需求分析3.1.1目標(biāo)系統(tǒng)功能說(shuō)明本教務(wù)管理系統(tǒng)針對(duì)客戶提供強(qiáng)大的軟件功能,主要維護(hù)日常教務(wù)管理工作的基本信息等,能為教務(wù)教學(xué)提供更好的數(shù)據(jù)支持.軟件的功能基本是通用的.提供系統(tǒng)用戶管理、角色管理、數(shù)據(jù)字典管理、課程表管理、總課表管理、教師課酬管理統(tǒng)計(jì)、試卷檔案管理和生成報(bào)表Excel數(shù)據(jù)文檔,查詢幫助等功能.3.1.2用戶需求分析本教務(wù)管理系統(tǒng)是基于Windows操作系統(tǒng)基礎(chǔ)上,通過(guò)對(duì)既定數(shù)據(jù)條件研究和分析并結(jié)合對(duì)學(xué)校教務(wù)管理進(jìn)行分析提出來(lái)的.對(duì)原有教務(wù)管理系統(tǒng)的非圖形界面操作和功能不強(qiáng)的數(shù)據(jù)庫(kù)系統(tǒng)的不穩(wěn)定性、不可擴(kuò)充性、難以移植等和原有系統(tǒng)功能覆蓋面不廣等缺陷相應(yīng)提出了一些要求.1、要求系統(tǒng)目前流行的數(shù)據(jù)庫(kù)系統(tǒng)Mysql作為底層數(shù)據(jù)庫(kù),使其具備很強(qiáng)的穩(wěn)定性、擴(kuò)充性、移植性等優(yōu)良性能.2、要求系統(tǒng)以功能強(qiáng)大的Windows系列操作系統(tǒng)作為操作系統(tǒng)平臺(tái),使其具備優(yōu)良的可視化圖形操作界面,大力提高系統(tǒng)的可操作性和交互性盡量減少操作員的負(fù)擔(dān),讓他們更方便、更快捷、更簡(jiǎn)單的進(jìn)行操作.3、要求擴(kuò)大系統(tǒng)功能覆蓋面.它的功能要求能進(jìn)行圖書的編目建庫(kù)、瀏覽數(shù)據(jù)、檢索與統(tǒng)計(jì)數(shù)據(jù)、以及打印數(shù)據(jù)等功能的綜合管理.并能實(shí)現(xiàn)控制各用戶系統(tǒng)權(quán)限,從而保證系統(tǒng)的安全性能.4、要求提高系統(tǒng)的可維護(hù)性.系統(tǒng)的數(shù)據(jù)要求能隨時(shí)進(jìn)行備份與恢復(fù),基于家庭圖書管理系統(tǒng)的局限性這里就不要求數(shù)據(jù)能與其他數(shù)據(jù)庫(kù)進(jìn)行交流(及共享數(shù)據(jù)).3.2系統(tǒng)安全性計(jì)算機(jī)系統(tǒng)的安全治理是一個(gè)龐大、復(fù)雜、面廣的系統(tǒng)工程.安全的核心是人,必須以人為核心進(jìn)行安全管理.采用各種先進(jìn)的安全技術(shù),使系統(tǒng)免受非法攻擊,排除沒(méi)有訪問(wèn)權(quán)限的使用者竊取機(jī)密信息,確保系統(tǒng)安全可靠的運(yùn)行.針對(duì)學(xué)校教務(wù)管理系統(tǒng)的特點(diǎn),為了加強(qiáng)其安全性,系統(tǒng)采用一定的保密措施.4系統(tǒng)設(shè)計(jì)4.1數(shù)據(jù)庫(kù)設(shè)計(jì)4.1.1數(shù)據(jù)庫(kù)簡(jiǎn)介Mysql是目前主流的數(shù)據(jù)庫(kù)軟件之一,作為系統(tǒng)的后臺(tái)服務(wù),主要用來(lái)保存系統(tǒng)各類信息,通過(guò)數(shù)據(jù)庫(kù)表的有效管理可以實(shí)現(xiàn)數(shù)據(jù)的永久存儲(chǔ),并可以通過(guò)特定的SQL語(yǔ)句對(duì)保存在其中的數(shù)據(jù)進(jìn)行一系列操作,如查詢、更新、刪除、添加等等.1 SQL語(yǔ)言SQL基礎(chǔ):SQL(StructuredQueryLanguage,結(jié)構(gòu)查詢語(yǔ)言)是一個(gè)功能強(qiáng)大的數(shù)據(jù)庫(kù)語(yǔ)言.SQL通常使用于數(shù)據(jù)庫(kù)的通訊.ANSI(美國(guó)國(guó)家標(biāo)準(zhǔn)學(xué)會(huì))聲稱,SQL是關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言.SQL語(yǔ)句通常用于完成一些數(shù)據(jù)庫(kù)的操作任務(wù),比如在數(shù)據(jù)庫(kù)中更新數(shù)據(jù),或者從數(shù)據(jù)庫(kù)中檢索數(shù)據(jù).使用SQL的常見(jiàn)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)有:Oracle、Mysql、Sybase、MicrosoftSQLServer、Access、Ingress等等.雖然絕大多數(shù)的數(shù)據(jù)庫(kù)系統(tǒng)使用SQL,但是它們同樣有它們自立另外的專有擴(kuò)展功能用于它們的系統(tǒng).但是,標(biāo)準(zhǔn)的SQL命令,比如"Select"、"Insert"、"Update"、"Delete"、"Create"和"Drop"常常被用于完成絕大多數(shù)數(shù)據(jù)庫(kù)的操作.MSSQLServer就是用的Transact-SQL.SQL語(yǔ)言有著非常突出的優(yōu)點(diǎn).非過(guò)程化語(yǔ)言:SQL是一個(gè)非過(guò)程化的語(yǔ)言,因?yàn)樗淮翁幚硪粋€(gè)記錄,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航.SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對(duì)單個(gè)記錄進(jìn)行操作,可操作記錄集,所有SQL語(yǔ)句接受集合作為輸入,返回集合作為輸出.SQL的集合特性允許一條SQL語(yǔ)句的結(jié)果作為另一條SQL語(yǔ)句的輸入.SQL不要求用戶指定對(duì)數(shù)據(jù)的存放方法,這種特性使用戶更易集中精力于要得到的結(jié)果;所有SQL語(yǔ)句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對(duì)指定數(shù)據(jù)存取的最快速度的手段,查詢優(yōu)化器知道存在什么索引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引.統(tǒng)一的語(yǔ)言:SQL可用于所有用戶的DB活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫(kù)管理員、應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶.SQL為許多任務(wù)提供了命令,其中包括:查詢數(shù)據(jù);在表中插入、修改和刪除記錄;建立、修改和刪除數(shù)據(jù)對(duì)象;控制對(duì)數(shù)據(jù)和數(shù)據(jù)對(duì)象的存??;保證數(shù)據(jù)庫(kù)一致性和完整性;以前的數(shù)據(jù)庫(kù)管理系統(tǒng)為上述各類操作提供單獨(dú)的語(yǔ)言,而SQL將全部任務(wù)統(tǒng)一在一種語(yǔ)言中.所有關(guān)系數(shù)據(jù)庫(kù)的公共語(yǔ)言:由于所有主要的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)都支持SQL語(yǔ)言,用戶可將使用SQL的技能從一個(gè)RDBMS(關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))轉(zhuǎn)到另一個(gè),所有用SQL編寫的程序都是可以移植的.SQL語(yǔ)句:SQL功能強(qiáng)大,是一種完備的數(shù)據(jù)處理語(yǔ)言,不僅用于數(shù)據(jù)庫(kù)查詢,而且用于數(shù)據(jù)庫(kù)中的數(shù)據(jù)修改和更新,概括起來(lái),它可以分成以下幾組:DML(DataManipulationLanguage,數(shù)據(jù)操作語(yǔ)言):用于檢索或者修改數(shù)據(jù);DDL(DataDefinitionLanguage,數(shù)據(jù)定義語(yǔ)言):用于定義數(shù)據(jù)的結(jié)構(gòu),比如創(chuàng)建、修改或者刪除數(shù)據(jù)庫(kù)對(duì)象;DCL(DataControlLanguage,數(shù)據(jù)控制語(yǔ)言):用于定義數(shù)據(jù)庫(kù)用戶的權(quán)限.DML組可以細(xì)分為以下的幾個(gè)語(yǔ)句:SELECT:用于檢索數(shù)據(jù);INSERT:用于增加數(shù)據(jù)到數(shù)據(jù)庫(kù);UPDATE:用于從數(shù)據(jù)庫(kù)中修改現(xiàn)存的數(shù)據(jù);DELETE:用于從數(shù)據(jù)庫(kù)中刪除數(shù)據(jù).DDL語(yǔ)句可以用于創(chuàng)建用戶和重建數(shù)據(jù)庫(kù)對(duì)象.下面是DDL命令:CREATETABLE,ALTERTABLE,DROPTABLE,CREATEINDEX,DROPINDEXDDL與DML:數(shù)據(jù)定義語(yǔ)言DDL:它是用來(lái)創(chuàng)建和修改數(shù)據(jù)庫(kù)結(jié)構(gòu)的一種語(yǔ)句,包括Create、Alter和Drop語(yǔ)句.?dāng)?shù)據(jù)操作語(yǔ)言DML:包括數(shù)據(jù)查詢與數(shù)據(jù)更新.?dāng)?shù)據(jù)查詢主要是由Select語(yǔ)句完成,這一點(diǎn)不再贅述.而數(shù)據(jù)更新所造成的風(fēng)險(xiǎn)大大超過(guò)數(shù)據(jù)查詢.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng)必須在更改期內(nèi)保護(hù)所存儲(chǔ)的數(shù)據(jù)的一致性,確保有效的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)必須保持一致性,DBMS還必須協(xié)調(diào)多用戶的并行更新,以確保用戶和它們的更改不至于影響其它用戶的作業(yè).用于修改數(shù)據(jù)庫(kù)內(nèi)容的SQL語(yǔ)句主要有以下三個(gè):(1)Insert,向一個(gè)表中加入新的數(shù)據(jù)行(2)Delete,從一個(gè)表中刪除數(shù)據(jù)行(3)Update,更改數(shù)據(jù)庫(kù)中已經(jīng)存在的數(shù)據(jù)Insert標(biāo)準(zhǔn)語(yǔ)法:INSERTINTOtablename(col1,col2...)VALUES(value1,value2...)Insert語(yǔ)句還可以將多行數(shù)據(jù)添加到目標(biāo)表中去,在這種形式的Insert語(yǔ)句中,新行的數(shù)據(jù)值不是在語(yǔ)句正文中明確地指定的,而是語(yǔ)句中指定的一個(gè)數(shù)據(jù)庫(kù)查詢.添加的值來(lái)自數(shù)據(jù)庫(kù)自身的行,在某些特定的狀態(tài)下,這是非常有用的.多行Insert語(yǔ)句為拷貝數(shù)據(jù)提供了一種緊湊而高效的方法,但我在自己做的圖書管理系統(tǒng)中沒(méi)有使用這種方法,我在系統(tǒng)中是使用循環(huán)依照上面的用法來(lái)完成多個(gè)記錄的插入.Update語(yǔ)句用于更新單表中選定行的一列或多列的值.要更新的目標(biāo)表在語(yǔ)句中定義,Set子句則指定要更新哪些列并計(jì)算它們的值.Update語(yǔ)句總是包含Where語(yǔ)句,而且Update語(yǔ)句比較危險(xiǎn),所以您必須明確地認(rèn)識(shí)到Where語(yǔ)句的重要性,Where語(yǔ)句被用來(lái)指定需要更新的行.標(biāo)準(zhǔn)語(yǔ)法:UPDATEtablenameSETcolumnname1=value1[,columname2=value2]...WHEREsearchconditionDelete語(yǔ)句標(biāo)準(zhǔn)語(yǔ)法:DELETEFROMtablenameWHEREcondition復(fù)雜操作實(shí)現(xiàn):在信息管理系統(tǒng)中,我們往往會(huì)遇到歸類、匯總、映射、索引、子查詢等復(fù)雜操作,相應(yīng)的支持與實(shí)現(xiàn)如下:GROUPBY子句語(yǔ)法為:SELECTcolumn1,SUM(column2)FROM"list-of-tables"GROUPBY"column-list";這個(gè)GROUPBY子句將集中所有的行在一起,它包含了指定例的數(shù)據(jù)以及允許合計(jì)函數(shù)來(lái)計(jì)算一個(gè)或者多個(gè)列.在本人的系統(tǒng)中在顯示數(shù)據(jù)時(shí)用到了此語(yǔ)句來(lái)對(duì)查詢所得的內(nèi)容排序然后再顯示.組合條件和布爾運(yùn)算符,以下的SQL語(yǔ)句中就含有組合條件:SELECTcolumn1,SUM(column2)FROM"list-of-tables"WHERE"condition1"AND"condition2";有些時(shí)候,需要一起瀏覽多個(gè)查詢的結(jié)果、組合它們的輸出,我們可以使用UNION關(guān)鍵字.2數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)處理在信息系統(tǒng)的研究中一直是非常重要的主題,然而,近年來(lái),隨著WorldWideWeb(WWW)的猛增及Internet技術(shù)的迅速發(fā)展,使得數(shù)據(jù)庫(kù)技術(shù)之時(shí)成為最熱門技術(shù)之一.?dāng)?shù)據(jù)庫(kù)技術(shù)能使Internet應(yīng)用超越具有早期應(yīng)用特點(diǎn)的簡(jiǎn)單的發(fā)布.同時(shí),Internet技術(shù)提供了一種向用戶發(fā)布數(shù)據(jù)庫(kù)內(nèi)容的標(biāo)準(zhǔn)化的訪問(wèn)方法.這些技術(shù)沒(méi)有脫離經(jīng)典數(shù)據(jù)庫(kù)技術(shù)的要求.它們只是加重了數(shù)據(jù)庫(kù)技術(shù)的重要性.?dāng)?shù)據(jù)庫(kù)的設(shè)計(jì)和開(kāi)發(fā)及包括藝術(shù)有包括工程.理解用戶的需求,然后,把它們轉(zhuǎn)變?yōu)橛行У臄?shù)據(jù)庫(kù)設(shè)計(jì)是一個(gè)藝術(shù)過(guò)程.把設(shè)計(jì)轉(zhuǎn)變?yōu)閷?shí)際的數(shù)據(jù)庫(kù),并且這些數(shù)據(jù)庫(kù)帶有功能完備、高效能的應(yīng)用,是一個(gè)工程過(guò)程.?dāng)?shù)據(jù)庫(kù)的目的是幫助人們跟蹤事務(wù).經(jīng)典的數(shù)據(jù)庫(kù)應(yīng)用涉及諸如訂單、顧客、工作、員工、學(xué)生、電話之類的項(xiàng),或其它數(shù)據(jù)量較大、需要密起關(guān)注的事務(wù).最近,由于數(shù)據(jù)庫(kù)的普及,數(shù)據(jù)庫(kù)技術(shù)已經(jīng)被應(yīng)用到了新的領(lǐng)域,諸如用于Internet的數(shù)據(jù)庫(kù)或用于公司內(nèi)聯(lián)網(wǎng)的數(shù)據(jù)庫(kù).?dāng)?shù)據(jù)庫(kù)也被越來(lái)越多地應(yīng)用于生成和維護(hù)多媒體應(yīng)用程序上.4.1.2數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)1數(shù)據(jù)庫(kù)功能設(shè)計(jì)依據(jù)教學(xué)管理系統(tǒng)的處理需求,對(duì)數(shù)據(jù)庫(kù)表的設(shè)計(jì)及功能如下:學(xué)生個(gè)人信息表:用于存放學(xué)生的基本信息.教師個(gè)人信息表:用于存放教師的基本信息.課程信息表:用于存放課程的基本信息.學(xué)生成績(jī)表:用于存放學(xué)生的成績(jī)紀(jì)錄.選課情況表:用于存入學(xué)生的選課紀(jì)錄.留言信息表:用于存放所有人的留言紀(jì)錄.2數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)1、實(shí)體及其聯(lián)系圖:圖4.1實(shí)體及其聯(lián)系圖Fig4.1Entityandrelation2、系統(tǒng)流程圖:圖4.2系統(tǒng)流程圖Fig4.2Systemflowchart3數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)主要是進(jìn)行數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì),即將數(shù)據(jù)按一定的分類、分組系統(tǒng)和邏輯層次組織起來(lái),是面向用戶的.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)時(shí)需要綜合企業(yè)各個(gè)部門的存檔數(shù)據(jù)和數(shù)據(jù)需求,分析各個(gè)數(shù)據(jù)之間的關(guān)系,按照DBMS提供的功能和描述工具,設(shè)計(jì)出規(guī)模適當(dāng)、正確反映數(shù)據(jù)關(guān)系、數(shù)據(jù)冗余少、存取效率高、能滿足多種查詢要求的數(shù)據(jù)模型.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)的步驟是:(1)數(shù)據(jù)庫(kù)結(jié)構(gòu)定義:目前的數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)有的是支持聯(lián)機(jī)事務(wù)處理CLTP(負(fù)責(zé)對(duì)事務(wù)數(shù)據(jù)進(jìn)行采集、處理、存儲(chǔ))的操作型DBMS,有的可支持?jǐn)?shù)據(jù)倉(cāng)庫(kù)、有聯(lián)機(jī)分析處理CLAP(指為支持決策的制定對(duì)數(shù)據(jù)的一種加工操作)功能的大型DBMS,有的數(shù)據(jù)庫(kù)是關(guān)系型的、有的可支持面向?qū)ο髷?shù)據(jù)庫(kù).針對(duì)選擇的DBMS,進(jìn)行數(shù)據(jù)庫(kù)結(jié)構(gòu)定義.(2)數(shù)據(jù)表定義:數(shù)據(jù)表定義指定義數(shù)據(jù)庫(kù)中數(shù)據(jù)表的結(jié)構(gòu),數(shù)據(jù)表的邏輯結(jié)構(gòu)包括:屬性名稱、類型、表示形式、缺省值、校驗(yàn)規(guī)則、是否關(guān)鍵字、可否為空等.關(guān)系型數(shù)據(jù)庫(kù)要盡量按關(guān)系規(guī)范化要求進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì),但為使效率高,規(guī)范化程度應(yīng)根據(jù)應(yīng)用環(huán)境和條件來(lái)決定.?dāng)?shù)據(jù)表設(shè)計(jì)不僅要滿足數(shù)據(jù)存儲(chǔ)的要求,還要增加一些如反映有關(guān)信息、操作責(zé)任、中間數(shù)據(jù)的字段或臨時(shí)數(shù)據(jù)表.(3)存儲(chǔ)設(shè)備和存儲(chǔ)空間組織:確定數(shù)據(jù)的存放地點(diǎn)、存儲(chǔ)路徑、存儲(chǔ)設(shè)備等,備份方案,對(duì)多版本如何保證一致性和數(shù)據(jù)的完整性.(4)數(shù)據(jù)使用權(quán)限設(shè)置:針對(duì)用戶的不同使用要求,確定數(shù)據(jù)的用戶使用權(quán)限,確保數(shù)據(jù)安全.(5)數(shù)據(jù)字典設(shè)計(jì):用數(shù)據(jù)字典描述數(shù)據(jù)庫(kù)的設(shè)計(jì),便于維護(hù)和修改.為了更好地組織數(shù)據(jù)和設(shè)計(jì)出實(shí)際應(yīng)用數(shù)據(jù)庫(kù),應(yīng)該注意如下問(wèn)題:規(guī)范化地重組數(shù)據(jù)結(jié)構(gòu):對(duì)數(shù)據(jù)進(jìn)行規(guī)范化表達(dá),這在后面將會(huì)具體討論.關(guān)系數(shù)據(jù)結(jié)構(gòu)的建立:在進(jìn)行了數(shù)據(jù)基本結(jié)構(gòu)的規(guī)范化重組后,還必須建立整體數(shù)據(jù)的關(guān)系結(jié)構(gòu).這一步設(shè)計(jì)完成后數(shù)據(jù)庫(kù)和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)工作基本完成,只待系統(tǒng)實(shí)現(xiàn)時(shí)將數(shù)據(jù)分析和數(shù)據(jù)字典的內(nèi)容代入到所設(shè)計(jì)的數(shù)據(jù)整體關(guān)系結(jié)構(gòu)中,一個(gè)規(guī)范化數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)就建立起來(lái)了.建立關(guān)系數(shù)據(jù)結(jié)構(gòu)涉及三方面內(nèi)容:確定關(guān)聯(lián)的關(guān)鍵指標(biāo)項(xiàng)并建立關(guān)聯(lián)表;確定單一的父系記錄結(jié)構(gòu);建立整個(gè)數(shù)據(jù)庫(kù)的關(guān)系結(jié)構(gòu).根據(jù)上面的E-R圖,建立六張數(shù)據(jù)庫(kù)表,其結(jié)構(gòu)如下所示:表4.1學(xué)生個(gè)人信息表Tab.4.1ImformationofStudent字段名數(shù)據(jù)類型是否為空說(shuō)明numbervarchar(20)notnull學(xué)號(hào)(主碼)namevarchar(20)notnull姓名sexvarchar(5)notnull性別agebigintnotnull年齡departmentvarchar(50)notnull專業(yè)collegevarchar(50)notnull學(xué)院phonevarchar(20)notnull電話addressvarchar(50)notnull地址inTimevarchar(50)notnull入學(xué)時(shí)間outTimevarchar(50)notnull畢業(yè)時(shí)間passwordvarchar(20)notnull密碼表4.2教師個(gè)人信息表Tab.4.2ImformationofTeacher字段名數(shù)據(jù)類型是否為空說(shuō)明numbervarchar(20)notnull職工號(hào)(主碼)namevarchar(20)notnull姓名sexvarchar(5)notnull性別agebigintnotnull年齡departmentvarchar(50)notnull部門postvarchar(20)notnull職稱remarkvarchar(100)notnull備注passwordvarchar(20)notnull密碼表4.3課程信息表Tab.4.3ImfomationofCourse字段名數(shù)據(jù)類型是否為空說(shuō)明numbervarchar(20)notnull課程號(hào)(主碼)namevarchar(20)notnull課程名creditbigintnotnull學(xué)分teachervarchar(20)notnull授課老師timevarchar(50)notnull上課時(shí)間addressvarchar(50)notnull上課地點(diǎn)typevarchar(50)notnull課程類型表4.4學(xué)生成績(jī)表Tab.4.4PreformenceofStudents字段名數(shù)據(jù)類型是否為空說(shuō)明snumbervarchar(20)notnull學(xué)生學(xué)號(hào)(外碼)cnumbervarchar(20)notnull課程號(hào)(外碼)yearvarchar(50)notnull學(xué)年termbigintnotnull學(xué)期gradefloatnotnull成績(jī)chongXiuvarchar(10)notnull重修標(biāo)志表4.5選課情況表Tab.4.5CurriculumSelectedByStudents字段名數(shù)據(jù)類型是否為空說(shuō)明snovarchar(20)notnull學(xué)生學(xué)號(hào)cnovarchar(20)notnull課程號(hào)namevarchar(20)notnull課程名稱creditbigintnotnull課程學(xué)分teachervarchar(20)notnull授課老師timevarchar(50)notnull上課時(shí)間addressvarchar(50)notnull上課地點(diǎn)typevarchar(50)notnull課程類型selectedvarchar(20)notnull選課標(biāo)志表4.6留言信息表Tab.4.6ImformationofLeaveWords字段名數(shù)據(jù)類型是否為空說(shuō)明titlevarchar(100)notnull主題namevarchar(20)notnull留言人emailvarchar(50)null留言人emailtimevarchar(50)notnull留言時(shí)間contentvarchar(2000)notnull留言內(nèi)容4.2功能設(shè)置4.2.1主要模塊的功能說(shuō)明基于Web的教學(xué)管理系統(tǒng)主要是實(shí)現(xiàn)網(wǎng)上選課、信息查詢、個(gè)人信息修改等功能的系統(tǒng).根據(jù)教學(xué)管理系統(tǒng)的基本需求和不同角色使用系統(tǒng)的權(quán)限不同,設(shè)定本系統(tǒng)的具體功能如下:1、管理員功能:實(shí)現(xiàn)學(xué)生信息查詢、教師信息查詢、添加或刪除學(xué)生、添加或刪除教師、留言管理、公告管理、課程信息錄入及修改等功能.2、教師功能:實(shí)現(xiàn)學(xué)生成績(jī)錄入及修改、個(gè)人信息查詢及修改、選擇選課的學(xué)生、網(wǎng)上留言和查看公告等功能.3、學(xué)生功能:實(shí)現(xiàn)網(wǎng)上選課、成績(jī)查詢、個(gè)人信息查詢及修改、網(wǎng)上留言及查看公告等功能.4.2.2系統(tǒng)功能模塊圖系統(tǒng)功能模塊所下如所示:圖4.3系統(tǒng)功能模塊圖Fig4.3Functionmodulesofsystem4.3控制處理層系統(tǒng)的流程控制主要由Servlet與Action來(lái)共同完成,當(dāng)用戶提交了相關(guān)信息,便把這些信息發(fā)送到Servlet或Action中,Servlet或Action再調(diào)用對(duì)應(yīng)的JavaBean的相關(guān)功能執(zhí)行用戶期望的操作,之后再跳轉(zhuǎn)到相應(yīng)的頁(yè)面,并返回操作后的結(jié)果.這一過(guò)程對(duì)用戶來(lái)說(shuō)是透明的,用戶僅能看到操作后返回的頁(yè)面信息,對(duì)于整個(gè)系統(tǒng)的流程控制完全可以不必了解.5系統(tǒng)實(shí)現(xiàn)與測(cè)試5.1業(yè)務(wù)邏輯層各Bean功能1、Course.java:publicCollectionqueryOperator(Stringhql):封裝了查詢的方法。publicCoursegetCourse(Stringid):返回指定id的課程。publicstaticvoidaddCourse(CourseFormcourse):添加一門新的課程。publicstaticvoiddeleteCourse(Stringid):刪除指定id的課程。publicCollectiongetCourses():返回所有課程信息。publicvoidchangeCourseInfo(Stringid,Coursecour):修改指定課程的信息2、Grade.java:publicCollectionqueryOperator(Stringhql):封裝了查詢的方法。publicvoidaddGrade(GradeFormgrade):添加一條成績(jī)紀(jì)錄。publicCollectiongetAllGrades(Stringsno):返回指定學(xué)生的所有成績(jī)紀(jì)錄。publicCollectiongetYearGrades(Stringsno,Stringyear):返回指定學(xué)生在指定學(xué)年的成績(jī)。publicCollectiongetTermGrades(Stringsno,Stringyear,Longterm):返回指定學(xué)生在指定學(xué)期的成績(jī)。publicstaticvoidchangeGrade(Stringsno,Stringcno,Stringgrade):修改指定學(xué)生指定課程的成績(jī)。3、Sc.java:publicCollectionqueryOperator(Stringhql):封裝了查詢的方法。publicstaticScgetSc(Stringsno,Stringcno):返回一條指定的選課紀(jì)錄。publicstaticvoidaddSc(Scsc):增加一條選課紀(jì)錄。publicstaticvoiddeleteSc(Stringsno,Stringcno):刪除一條選課紀(jì)錄。publicCollectiongetScs(Stringsno):返回指定學(xué)生所選修的所有課程。publicCollectiongetStudents(Stringcno):返回選修指定課程的所有學(xué)生。publicCollectiongetTeaScs(StringteaName):返回指定教師開(kāi)設(shè)的選修課。publicCollectiongetSelectedStudents(Stringcno):返回選修指定課程并且已經(jīng)入選的學(xué)生。publicvoidf_tSc(Stringsno,Stringcno):選擇指定學(xué)生選修指定課程(即讓其從未選中狀態(tài)變成選中狀態(tài))。publicvoidt_fSc(Stringsno,Stringcno):取消指定學(xué)生選修指定課程(即讓其從選中狀態(tài)變成未選中狀態(tài))。4、Message.java:publicvoidaddMessage(MessageFormmessage):添加留言。publicvoiddeleteMessage(Stringtitle,Stringname,Stringemail,Stringtime,Stringcontent):刪除留言。publicintgetMessageCount():返回留言總數(shù)。publicPagelistDate(Stringpage_num):獲得指定頁(yè)面的數(shù)據(jù),并封裝在Page中返回。publicVectorgetResult():返回查詢結(jié)果。5、Student.java:publicCollectionqueryOperator(Stringhql):封裝了查詢的方法。publicstaticvoidaddStudent(Studentstudent):添加一個(gè)學(xué)生。publicstaticvoiddeleteStudent(Stringid):刪除指定id的學(xué)生。publicstaticStudentgetStudent(Stringid):返回指定id的學(xué)生。publicbooleanisStudent(LoginFormstudent):驗(yàn)證學(xué)生用戶的登陸信息。publicCollectiongetInformation(Stringid):返回指定學(xué)號(hào)的學(xué)生信息。publicvoidchahgeStuInfo(StuInfoFormstudent):修改個(gè)人信息。6、Teacher.java:publicCollectionqueryOperator(Stringhql):封裝了查詢的方法。publicstaticvoidaddTeacher(Teacherteacher):添加一個(gè)教師。publicstaticvoiddeleteTeacher(Stringid):刪除指定id的教師。publicstaticTeachergetTeacher(Stringid):返回指定職工號(hào)的教師。publicbooleanisTeacher(LoginFormteacher):驗(yàn)證老師用戶的登陸信息。publicCollectiongetInformation(Stringid):返回指定職工號(hào)的教師信息。publicvoidchahgeTeaInfo(TeaInfoFormteacher):修改個(gè)人信息。5.2 系統(tǒng)界面1.登陸界面在登陸界面進(jìn)行系統(tǒng)用戶的驗(yàn)證,只有合法用用才可以登陸系統(tǒng),如圖:圖5.1登陸界面Fig5.1Logininterface“登陸”的主要功能代碼為:publicActionForwardexecute(ActionMappingmapping,ActionFormform, HttpServletRequestrequest,HttpServletResponseresponse)throwsException{ LoginFormloginForm=(LoginForm)form;//TODOAuto-generatedmethodstub Studentstudent=newStudent(); Teacherteacher=newTeacher(); HttpSessionsession=request.getSession(); Stringtype=loginForm.getType(); if(type.equals("student")&&student.isStudent(loginForm)){ student=Student.getStudent(loginForm.getId()); session.setAttribute("isLogin",newString("true")); session.setAttribute("student",student); return(mapping.findForward("student")); } elseif(type.equals("teacher")&&teacher.isTeacher(loginForm)){ teacher=Teacher.getTeacher(loginForm.getId()); session.setAttribute("isLogin",newString("true")); session.setAttribute("teacher",teacher); return(mapping.findForward("teacher")); } //elseif(type.equals("manager")&&loginForm.getId().equals("yesqcy")&&loginForm.getPassword().equals("baisse183")){ elseif(type.equals("manager")&&loginForm.getId().equals("admin")&&loginForm.getPassword().equals("admin")){ session.setAttribute("isLogin",newString("true")); return(mapping.findForward("manager")); } else{ session.setAttribute("isLogin",newString("false")); return(mapping.findForward("loginFailure")); } }以管理員身份登陸系統(tǒng)后界面為:圖5.2登陸后的界面Fig5.2Interfaceoflogined2.添加學(xué)生信息界面的設(shè)計(jì)管理員可以通過(guò)系統(tǒng)添加學(xué)生的信息,添加界面如圖:圖5.3添加學(xué)生Fig5.3Addstudent3.管理員可以通過(guò)系統(tǒng)發(fā)布公告,如圖:圖5.4添加留言Fig5.4Addleavewords4.學(xué)生通過(guò)系統(tǒng)選課,如圖:圖5.5學(xué)生選課圖Fig5.5Curriculumselectedbystudent5.學(xué)生查看和修改個(gè)人信息,如圖:圖5.6查看學(xué)生信息Fig5.6Showimformationofstudent6.添加教師信息,如圖:圖5.7添加教師Fig5.7Addteachers7.刪除留言,如圖:圖5.8刪除留言Fig5.8Deleteleavedwords8.添加課程,如圖:圖5.9課程錄入Fig5.9Addcourse5.3搭建系統(tǒng)運(yùn)行環(huán)境本系統(tǒng)是使用了現(xiàn)在流行的MVC模式進(jìn)行設(shè)計(jì),運(yùn)用了維護(hù)性更強(qiáng)、可行性更好、多平臺(tái)支持運(yùn)行的JSP技術(shù).將Tomcat服務(wù)器部署到運(yùn)用的開(kāi)發(fā)工具M(jìn)yEclipse9.0,同時(shí)工具集成了系統(tǒng)所需的其他組建,比如:jdk.jar等.測(cè)試網(wǎng)址:http://localhost:8080/biyesheji/login.jsp測(cè)試管理員用戶名:admin用戶密碼:admin測(cè)試學(xué)生用戶名:TH001用戶密碼:TH001測(cè)試學(xué)生用戶名:200901用戶密碼:200901小結(jié) 通過(guò)Eclipse開(kāi)發(fā)工具與JSP開(kāi)發(fā)語(yǔ)言的結(jié)合,Struts框架和Hibernate技術(shù)的整合應(yīng)用,能很好的建設(shè)一個(gè)教學(xué)管理網(wǎng)站,實(shí)現(xiàn)該網(wǎng)站所應(yīng)有的功能模塊.在此基礎(chǔ)上經(jīng)過(guò)兩個(gè)多月的設(shè)計(jì)和開(kāi)發(fā),教學(xué)管理系統(tǒng)基本開(kāi)發(fā)完畢,其功能基本符合要求,所有的模塊的功能也都已經(jīng)基本完成.在這次的設(shè)計(jì)過(guò)程中雖然碰到了許多難題,但通過(guò)自己的努力以及老師、同學(xué)的幫助也都一一克服了.通過(guò)此次畢業(yè)設(shè)計(jì),不僅鞏固大學(xué)四年所學(xué)的專業(yè)知識(shí),更在此基礎(chǔ)上通過(guò)自學(xué)了解和掌握了一些新的開(kāi)發(fā)方法和編程技巧,對(duì)自己是一個(gè)很大的提高.致謝在此,首先要感謝我的導(dǎo)師,感謝他在百忙之中還抽出時(shí)間來(lái)指導(dǎo)我、幫助我順利地完成畢業(yè)設(shè)計(jì).在本次畢業(yè)設(shè)計(jì)中,我從指導(dǎo)老師身上學(xué)到了很多東西.他認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我受益匪淺.他無(wú)論在理論上還是在實(shí)踐中,都給與我很大的幫助,使我得到很大的提高,這對(duì)于我以后的工作和學(xué)習(xí)都是巨大的幫助,在學(xué)術(shù)上指導(dǎo)老師是一個(gè)嚴(yán)謹(jǐn)求實(shí),認(rèn)真負(fù)責(zé)的人.他不辭辛勞,為我選定課題的研究方向,對(duì)我的課題給予了大量的指導(dǎo),提出了寶貴的意見(jiàn),在此感謝他耐心的輔導(dǎo).其次我要感謝數(shù)信學(xué)院所有的老師們,沒(méi)有他們平時(shí)的教導(dǎo),我不會(huì)順利完成我的畢業(yè)設(shè)計(jì).是他們不辭辛苦、勤勤懇懇、任勞任怨、不厭其煩地給我們講解相關(guān)課程.面對(duì)專業(yè)知識(shí)不那么深厚的我們,老師們一遍又一遍試圖用最易懂的方式讓我們透徹理解那些高深的專業(yè)理論.參考文獻(xiàn)[1]劉曉華,張健,周慧貞.JSP應(yīng)用開(kāi)發(fā)詳解(第三版)[M].北京:電子工業(yè)出版社,2007.1,8-9頁(yè).[2]趙強(qiáng).精通JSP編程[M].北京:電子工業(yè)出版社,2006.4,21-22頁(yè).[3]趙強(qiáng).精通Struts基于MVC的JavaWeb設(shè)計(jì)與開(kāi)發(fā)[M].北京:電子工業(yè)出版社,2004.8,114-121頁(yè)[4]李剛.整合STRUTS+HIBERNATE+SPRING應(yīng)用開(kāi)發(fā)詳解[J].北京:清華大學(xué)出版社,2007.11,45-121頁(yè)[5]夏晰,曹曉鋼,唐勇.深入淺出Hibernate.北京:電子工業(yè)出版

溫馨提示

  • 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)論